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

Vedi anche

Strutture principali