D3D12_SHADER_RESOURCE_VIEW_DESC struttura (d3d12.h)
Descrive una visualizzazione delle risorse shader (SRV).
Sintassi
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;
Members
Format
Valore DXGI_FORMAT tipizzato che specifica il formato di visualizzazione. Vedere la sezione Osservazioni.
ViewDimension
Valore D3D12_SRV_DIMENSION tipizzato che specifica il tipo di risorsa della vista. Questo tipo è uguale al tipo di risorsa della risorsa sottostante. Questo membro determina anche quali _SRV usare nell'unione seguente.
Shader4ComponentMapping
Valore costruito usando la macro D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING . L'enumerazione D3D12_SHADER_COMPONENT_MAPPING specifica quali valori devono essere restituiti dalla memoria quando la trama viene accessibile in uno shader tramite questa visualizzazione risorsa shader (SRV). Ad esempio, può instradare il componente 1 (verde) dalla memoria o dalla costante 0
, nel componente 2 (.b
) del valore assegnato al shader.
Buffer
Struttura D3D12_BUFFER_SRV che visualizza la risorsa come buffer.
Texture1D
Struttura D3D12_TEX1D_SRV che visualizza la risorsa come trama 1D.
Texture1DArray
Struttura D3D12_TEX1D_ARRAY_SRV che visualizza la risorsa come matrice di trama 1D.
Texture2D
Struttura D3D12_TEX2D_SRV che visualizza la risorsa come trama 2D.
Texture2DArray
Struttura D3D12_TEX2D_ARRAY_SRV che visualizza la risorsa come matrice di trama 2D.
Texture2DMS
Struttura D3D12_TEX2DMS_SRV che visualizza la risorsa come trama multicampionata 2D.
Texture2DMSArray
Struttura D3D12_TEX2DMS_ARRAY_SRV che visualizza la risorsa come matrice a trama multicampionata 2D.
Texture3D
Struttura D3D12_TEX3D_SRV che visualizza la risorsa come trama 3D.
TextureCube
Struttura D3D12_TEXCUBE_SRV che visualizza la risorsa come trama del cubo 3D.
TextureCubeArray
Struttura D3D12_TEXCUBE_ARRAY_SRV che visualizza la risorsa come matrice 3D-cube-texture.
RaytracingAccelerationStructure
Struttura D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV che visualizza la risorsa come struttura di accelerazione raytracing.
Commenti
Una visualizzazione è un modo specifico per esaminare i dati in una risorsa. La visualizzazione determina i dati da esaminare e come viene eseguito il cast durante la lettura.
Quando si visualizza una risorsa, la descrizione della visualizzazione risorse deve specificare un formato tipizzato, compatibile con il formato della risorsa. Ciò significa che non è possibile creare una descrizione della visualizzazione risorse usando qualsiasi formato con _TYPELESS nel nome. È tuttavia possibile visualizzare una risorsa senza tipo specificando un formato tipizzato per la visualizzazione. Ad esempio, una risorsa DXGI_FORMAT_R32G32B32_TYPELESS può essere visualizzata con uno di questi formati tipizzato: DXGI_FORMAT_R32G32B32_FLOAT, DXGI_FORMAT_R32G32B32_UINT e DXGI_FORMAT_R32G32B32_SINT, poiché questi formati tipizzato sono compatibili con la risorsa senza tipi.
Creare una descrizione della visualizzazione shader-resource chiamando ID3D12Device::CreateShaderResourceView.
Requisiti
Intestazione | d3d12.h |