D3D11_SHADER_RESOURCE_VIEW_DESC1 结构 (d3d11_3.h)
描述着色器资源视图。
语法
typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC1 {
DXGI_FORMAT Format;
D3D11_SRV_DIMENSION ViewDimension;
union {
D3D11_BUFFER_SRV Buffer;
D3D11_TEX1D_SRV Texture1D;
D3D11_TEX1D_ARRAY_SRV Texture1DArray;
D3D11_TEX2D_SRV1 Texture2D;
D3D11_TEX2D_ARRAY_SRV1 Texture2DArray;
D3D11_TEX2DMS_SRV Texture2DMS;
D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray;
D3D11_TEX3D_SRV Texture3D;
D3D11_TEXCUBE_SRV TextureCube;
D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray;
D3D11_BUFFEREX_SRV BufferEx;
};
} D3D11_SHADER_RESOURCE_VIEW_DESC1;
成员
Format
一个DXGI_FORMAT类型的值,用于指定查看格式。 请参阅备注。
ViewDimension
一个D3D11_SRV_DIMENSION类型的值,该值指定视图的资源类型。 此类型与基础资源的资源类型相同。 此成员还确定在以下联合中使用的_SRV。
Buffer
将资源视为缓冲区 的D3D11_BUFFER_SRV 结构。
Texture1D
将资源视为 1D 纹理的 D3D11_TEX1D_SRV 结构。
Texture1DArray
将资源视为 1D 纹理数组的 D3D11_TEX1D_ARRAY_SRV 结构。
Texture2D
将资源视为 2D 纹理的 D3D11_TEX2D_SRV1 结构。
Texture2DArray
将资源视为 2D 纹理数组的 D3D11_TEX2D_ARRAY_SRV1 结构。
Texture2DMS
将资源视为 2D 多重采样纹理的 D3D11_TEX2DMS_SRV 结构。
Texture2DMSArray
将资源视为 2D 多重采样纹理数组 的 D3D11_TEX2DMS_ARRAY_SRV 结构。
Texture3D
将资源视为 3D 纹理的 D3D11_TEX3D_SRV 结构。
TextureCube
将资源视为 3D 立方体纹理的 D3D11_TEXCUBE_SRV 结构。
TextureCubeArray
将资源视为 3D 立方体纹理数组的 D3D11_TEXCUBE_ARRAY_SRV 结构。
BufferEx
将资源视为原始缓冲区 的D3D11_BUFFEREX_SRV 结构。 有关缓冲区的原始查看的详细信息,请参阅 缓冲区的原始视图。
备注
视图是查看资源中数据的特定于格式的方式。 视图确定要查看的数据,以及读取时如何转换数据。
查看资源时,资源视图说明必须指定与资源格式兼容的类型化格式。 因此,这意味着不能使用名称中带有_TYPELESS的任何格式创建资源视图说明。 但是,可以通过指定视图的类型化格式来查看无类型资源。 例如,可以使用以下类型化格式之一查看DXGI_FORMAT_R32G32B32_TYPELESS资源:DXGI_FORMAT_R32G32B32_FLOAT、DXGI_FORMAT_R32G32B32_UINT和DXGI_FORMAT_R32G32B32_SINT,因为这些类型化格式与无类型资源兼容。
通过调用 ID3D11Device3::CreateShaderResourceView1 创建着色器资源视图说明。 若要查看着色器资源视图说明,请调用 ID3D11ShaderResourceView1::GetDesc1。
要求
标头 | d3d11_3.h |