Metodo ID3D12GraphicsCommandList4::CopyRaytracingAccelerationStructure (d3d12.h)

Copia una struttura di accelerazione di origine nella memoria di destinazione durante l'applicazione della trasformazione specificata.

Sintassi

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

Parametri

[in] DestAccelerationStructureData

Memoria di destinazione. È possibile individuare le dimensioni necessarie chiamando EmitRaytracingAccelerationStructurePostbuildInfo in anticipo, se necessario per la modalità specificata.

L'indirizzo iniziale di destinazione deve essere allineato a 256 byte, definito come D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT, indipendentemente dalla modalità specificata.

L'intervallo di memoria di destinazione non può sovrapporsi all'origine. In caso contrario, i risultati non sono definiti.

Lo stato della risorsa a cui deve trovarsi la memoria a cui punta dipende dal parametro Mode . Per altre informazioni, vedere D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

[in] SourceAccelerationStructureData

Indirizzo della struttura di accelerazione o di altri tipi di dati da copiare/trasformare in base alla modalità specificata. I dati rimangono invariati e utilizzabili. L'operazione copia solo i dati a cui punta SourceAccelerationStructureData e non altri dati, ad esempio le strutture di accelerazione, a cui possono puntare i dati di origine. Nel caso di una struttura di accelerazione di primo livello, ad esempio, tutte le strutture di accelerazione di livello inferiore a cui punta non vengono copiate nell'operazione.

La memoria di origine deve essere allineata a 256 byte, definita come D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT, indipendentemente dalla modalità specificata.

Lo stato della risorsa a cui deve trovarsi la memoria a cui punta dipende dal parametro Mode . Per altre informazioni, vedere D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

[in] Mode

Tipo di operazione di copia da eseguire. Per altre informazioni, vedere D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE.

Valore restituito

nessuno

Osservazioni

Poiché le strutture di accelerazione raytracing possono contenere puntatori interni e avere un layout opaco dipendente dal dispositivo, copiarli o modificarli in altro modo richiede un'API dedicata in modo che i driver possano gestire l'operazione richiesta.

Questo metodo può essere chiamato da elenchi di comandi grafici o di calcolo, ma non da bundle.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1809 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione d3d12.h
Libreria D3D12.lib
DLL D3D12.dll

Vedi anche

ID3D12GraphicsCommandList4