Compartilhar via


Método ID3D12GraphicsCommandList4::CopyRaytracingAccelerationStructure (d3d12.h)

Copia uma estrutura de aceleração de origem para a memória de destino ao aplicar a transformação especificada.

Sintaxe

void CopyRaytracingAccelerationStructure(
  [in] D3D12_GPU_VIRTUAL_ADDRESS                         DestAccelerationStructureData,
  [in] D3D12_GPU_VIRTUAL_ADDRESS                         SourceAccelerationStructureData,
  [in] D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode
);

Parâmetros

[in] DestAccelerationStructureData

A memória de destino. O tamanho necessário pode ser descoberto chamando EmitRaytracingAccelerationStructurePostbuildInfo com antecedência, se necessário, para o Modo especificado.

O endereço inicial de destino deve ser alinhado a 256 bytes, definido como D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT, independentemente do Modo especificado.

O intervalo de memória de destino não pode sobrepor a origem. Caso contrário, os resultados serão indefinidos.

O estado do recurso no qual a memória apontada deve estar depende do parâmetro Mode . Para obter mais informações, consulte D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

[in] SourceAccelerationStructureData

O endereço da estrutura de aceleração ou outro tipo de dados a serem copiados/transformados com base no Modo especificado. Os dados permanecem inalterados e utilizáveis. A operação copia apenas os dados apontados por SourceAccelerationStructureData e não outros dados, como estruturas de aceleração, para os quais os dados de origem podem apontar. Por exemplo, no caso de uma estrutura de aceleração de nível superior, todas as estruturas de aceleração de nível inferior para as quais ela aponta não são copiadas na operação.

A memória de origem deve ser alinhada a 256 bytes, definidos como D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT, independentemente do Modo especificado.

O estado do recurso no qual a memória apontada deve estar depende do parâmetro Mode . Para obter mais informações, consulte D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

[in] Mode

O tipo de operação de cópia a ser executada. Para obter mais informações, consulte D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

Retornar valor

Nenhum

Comentários

Como as estruturas de aceleração de raytracing podem conter ponteiros internos e ter um layout opaco dependente do dispositivo, copiá-las ou manipulá-las de outra forma requer uma API dedicada para que os drivers possam lidar com a operação solicitada.

Esse método pode ser chamado de gráficos ou listas de comandos de computação, mas não de pacotes.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1809 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2016 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho d3d12.h
Biblioteca D3D12.lib
DLL D3D12.dll

Confira também

ID3D12GraphicsCommandList4