Bagikan melalui


struktur D3D12_DISPATCH_RAYS_DESC (d3d12.h)

Menjelaskan properti operasi pengiriman sinar yang dimulai dengan panggilan ke ID3D12GraphicsCommandList4::D ispatchRays.

Sintaks

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;

Anggota

RayGenerationShaderRecord

Rekor shader untuk shader generasi sinar untuk digunakan.

Memori yang ditujukan harus dalam status D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

Alamat harus diselaraskan ke 64 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT, dan dalam rentang [0...4096] byte.

MissShaderTable

Meja shader untuk miss shader.

Langkah ini adalah langkah rekor, dan harus diselaraskan ke 32 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT, dan dalam rentang [0...4096] byte. 0 diperbolehkan.

Memori yang ditujukan harus dalam status D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

Alamat harus diratakan ke 64 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

HitGroupTable

Tabel shader untuk grup hit.

Langkah ini adalah langkah rekor, dan harus diselaraskan ke 32 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT, dan dalam rentang [0...4096] byte. 0 diperbolehkan.

Memori yang ditujukan harus dalam status D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

Alamat harus diratakan ke 64 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

CallableShaderTable

Tabel shader untuk shader yang dapat dipanggil.

Langkah ini adalah langkah rekaman, dan harus diselaraskan ke 32 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT. 0 diperbolehkan.

Memori yang ditujukan harus dalam status D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE.

Alamat harus diratakan ke 64 byte, didefinisikan sebagai D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT.

Width

Lebar kisi utas shader generasi.

Height

Tinggi kisi utas shader generasi.

Depth

Kedalaman kisi utas shader generasi.

Persyaratan

Persyaratan Nilai
Header d3d12.h