estrutura D3D12_SHADER_RESOURCE_VIEW_DESC (d3d12.h)
Descreve uma SRV (exibição de recurso de sombreador).
Sintaxe
typedef struct D3D12_SHADER_RESOURCE_VIEW_DESC {
DXGI_FORMAT Format;
D3D12_SRV_DIMENSION ViewDimension;
UINT Shader4ComponentMapping;
union {
D3D12_BUFFER_SRV Buffer;
D3D12_TEX1D_SRV Texture1D;
D3D12_TEX1D_ARRAY_SRV Texture1DArray;
D3D12_TEX2D_SRV Texture2D;
D3D12_TEX2D_ARRAY_SRV Texture2DArray;
D3D12_TEX2DMS_SRV Texture2DMS;
D3D12_TEX2DMS_ARRAY_SRV Texture2DMSArray;
D3D12_TEX3D_SRV Texture3D;
D3D12_TEXCUBE_SRV TextureCube;
D3D12_TEXCUBE_ARRAY_SRV TextureCubeArray;
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV RaytracingAccelerationStructure;
};
} D3D12_SHADER_RESOURCE_VIEW_DESC;
Membros
Format
Um valor de tipo DXGI_FORMAT que especifica o formato de exibição. Consulte Observações.
ViewDimension
Um valor de tipo D3D12_SRV_DIMENSION que especifica o tipo de recurso da exibição. Esse tipo é o mesmo que o tipo de recurso do recurso subjacente. Esse membro também determina quais _SRV usar na união abaixo.
Shader4ComponentMapping
Um valor, construído usando a macro D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING . A enumeração D3D12_SHADER_COMPONENT_MAPPING especifica quais valores da memória devem ser retornados quando a textura é acessada em um sombreador por meio dessa SRV (exibição de recurso de sombreador). Por exemplo, ele pode rotear o componente 1 (verde) da memória, ou a constante 0
, para o componente 2 (.b
) do valor fornecido ao sombreador.
Buffer
Uma estrutura D3D12_BUFFER_SRV que exibe o recurso como um buffer.
Texture1D
Uma estrutura D3D12_TEX1D_SRV que exibe o recurso como uma textura 1D.
Texture1DArray
Uma estrutura D3D12_TEX1D_ARRAY_SRV que exibe o recurso como uma matriz de textura 1D.
Texture2D
Uma estrutura D3D12_TEX2D_SRV que exibe o recurso como uma textura 2D.
Texture2DArray
Uma estrutura D3D12_TEX2D_ARRAY_SRV que exibe o recurso como uma matriz de textura 2D.
Texture2DMS
Uma estrutura D3D12_TEX2DMS_SRV que exibe o recurso como uma textura 2D-multisampled.
Texture2DMSArray
Uma estrutura D3D12_TEX2DMS_ARRAY_SRV que exibe o recurso como uma matriz de textura 2D-multisampled-texture.
Texture3D
Uma estrutura D3D12_TEX3D_SRV que exibe o recurso como uma textura 3D.
TextureCube
Uma estrutura D3D12_TEXCUBE_SRV que exibe o recurso como uma textura de cubo 3D.
TextureCubeArray
Uma estrutura D3D12_TEXCUBE_ARRAY_SRV que exibe o recurso como uma matriz de textura de cubo 3D.
RaytracingAccelerationStructure
Uma estrutura D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV que exibe o recurso como uma estrutura de aceleração de raytracing.
Comentários
Uma exibição é uma maneira específica de examinar os dados em um recurso. A exibição determina quais dados examinar e como eles são convertidos quando lidos.
Ao exibir um recurso, a descrição do modo de exibição de recurso deve especificar um formato tipado que seja compatível com o formato de recurso. Isso significa que você não pode criar uma descrição de exibição de recurso usando qualquer formato com _TYPELESS no nome. No entanto, você pode exibir um recurso sem tipo especificando um formato tipado para o modo de exibição. Por exemplo, um recurso de DXGI_FORMAT_R32G32B32_TYPELESS pode ser exibido com um destes formatos tipado: DXGI_FORMAT_R32G32B32_FLOAT, DXGI_FORMAT_R32G32B32_UINT e DXGI_FORMAT_R32G32B32_SINT, pois esses formatos tipado são compatíveis com o recurso sem tipo.
Crie uma descrição de shader-resource-view chamando ID3D12Device::CreateShaderResourceView.
Requisitos
Cabeçalho | d3d12.h |