Compartilhar via


estrutura D3D12_DISPATCH_RAYS_DESC (d3d12.h)

Descreve as propriedades de uma operação de expedição de raio iniciada com uma chamada para ID3D12GraphicsCommandList4::D ispatchRays.

Sintaxe

typedef struct D3D12_DISPATCH_RAYS_DESC {
  D3D12_GPU_VIRTUAL_ADDRESS_RANGE            RayGenerationShaderRecord;
  D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE MissShaderTable;
  D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE HitGroupTable;
  D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE CallableShaderTable;
  UINT                                       Width;
  UINT                                       Height;
  UINT                                       Depth;
} D3D12_DISPATCH_RAYS_DESC;

Membros

RayGenerationShaderRecord

O registro de sombreador para o sombreador de geração de raios a ser usado.

A memória apontada deve estar no estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

O endereço deve ser alinhado a 64 bytes, definido como D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT e no intervalo [0...4096] bytes.

MissShaderTable

A tabela de sombreador para sombreadores perdidos.

O passo a passo é recorde e deve ser alinhado a 32 bytes, definido como D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT e no intervalo [0...4096] bytes. 0 é permitido.

A memória apontada deve estar no estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

O endereço deve ser alinhado a 64 bytes, definido como D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

HitGroupTable

A tabela de sombreador para grupos de ocorrências.

O passo a passo é recorde e deve ser alinhado a 32 bytes, definido como D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT e no intervalo [0...4096] bytes. 0 é permitido.

A memória apontada deve estar no estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

O endereço deve ser alinhado a 64 bytes, definido como D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

CallableShaderTable

A tabela de sombreador para sombreadores callable.

O passo é recorde e deve ser alinhado a 32 bytes, definidos como D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT. 0 é permitido.

A memória apontada deve estar no estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

O endereço deve ser alinhado a 64 bytes, definido como D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

Width

A largura da grade de thread do sombreador de geração.

Height

A altura da grade de thread do sombreador de geração.

Depth

A profundidade da grade de thread do sombreador de geração.

Requisitos

Requisito Valor
Cabeçalho d3d12.h