语法
参数
pResource [in, optional]类型:ID3D12Resource * 指向表示着色器资源的 ID3D12Resource 对象的指针。 必须提供 pResource 或 pDesc 中的至少一个。使用空的 pResource 来初始化空描述符,这将保证类似 D3D11 的空绑定行为(读取 0,写入被丢弃),但必须具有有效的 pDesc 才能确定描述符类型。 pDesc [in, optional]
类型:const D3D12_SHADER_RESOURCE_VIEW_DESC * 指向描述着色器资源视图的 D3D12_SHADER_RESOURCE_VIEW_DESC 结构体的指针。 如果可能,使用空的 pDesc 来初始化默认描述符。此行为与 D3D11 空描述符行为相同,其中会填入默认值。此行为继承资源格式和维度(如果不是无类型),对于缓冲区,SRV 面向整个缓冲区且为类型化(而非原始或结构化),对于纹理,SRV 面向整个纹理、所有 mip 和所有数组切片。并非所有资源都支持空描述符初始化。 DestDescriptor [in]
类型:D3D12_CPU_DESCRIPTOR_HANDLE 描述表示着色器资源视图的 CPU 描述符句柄。此句柄可以在着色器可见或非着色器可见的描述符堆中创建。
返回值
类型:void 无。备注
处理 YUV 4:2:0 视频格式
应用程序必须将亮度 (Y) 平面与色度 (UV) 平面分开映射。开发人员通过为同一纹理调用 CreateShaderResourceView 两次并传入 1 通道和 2 通道格式来实现这一点。传入与 Y 平面兼容的 1 通道格式仅映射 Y 平面。传入与 UV 平面(一起)兼容的 2 通道格式仅将 U 和 V 平面映射为单个资源视图。 YUV 4:2:0 格式列在 DXGI_FORMAT 中。示例
D3D12nBodyGravity 示例按以下方式使用 ID3D12Device::CreateShaderResourceView: 基于一个描述描述并创建两个着色器资源视图。要求
头文件: d3d12_xs.h 或 d3d12_x.h库: d3d12_xs.lib 或 d3d12_x.lib
支持的平台:XBOX Series 主机和 XBOX One 系列
