1.3 KiB
1.3 KiB
D3D12Texture::InitializeFromExisting
函数签名
bool InitializeFromExisting(ID3D12Resource* resource);
中文描述
从已存在的 D3D12 纹理资源初始化纹理包装类,不分配新资源。此方法用于包装外部创建的纹理资源,例如从文件系统加载的纹理或与其他 API 共享的资源。
参数
| 参数 | 类型 | 描述 |
|---|---|---|
resource |
ID3D12Resource* |
已存在的 D3D12 纹理资源指针,不能为 nullptr |
返回值
bool - 初始化是否成功。如果 resource 为 nullptr,返回 false。
线程安全
非线程安全,请确保在单线程环境中调用。
复杂度
O(1)
示例
ComPtr<ID3D12Resource> externalResource;
// 外部创建或获取的 D3D12 资源
device->CreateReservedResource(&desc, initialState, nullptr, IID_PPV_ARGS(&externalResource));
D3D12Texture texture;
if (texture.InitializeFromExisting(externalResource.Get())) {
// 成功包装外部资源
// 注意:外部资源的管理责任保持不变
}
相关文档
- D3D12Texture - 类总览
- Initialize - 创建新纹理
- InitializeFromData - 从数据初始化
- InitializeDepthStencil - 初始化深度模板纹理