Freigeben über


ID3D12Device::CopyDescriptorsSimple-Methode (d3d12.h)

Kopiert Deskriptoren aus einer Quelle in ein Ziel.

Syntax

void CopyDescriptorsSimple(
  [in] UINT                        NumDescriptors,
  [in] D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart,
  [in] D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart,
  [in] D3D12_DESCRIPTOR_HEAP_TYPE  DescriptorHeapsType
);

Parameter

[in] NumDescriptors

Typ: UINT

Die Anzahl der zu kopierenden Deskriptoren.

[in] DestDescriptorRangeStart

Typ: D3D12_CPU_DESCRIPTOR_HANDLE

Ein D3D12_CPU_DESCRIPTOR_HANDLE , der die Zieldeskriptoren beschreibt, in die der Kopiervorgang gestartet werden soll.

Die Ziel- und Quellbeschreibungen müssen sich in Heaps derselben D3D12_DESCRIPTOR_HEAP_TYPE befinden.

[in] SrcDescriptorRangeStart

Typ: D3D12_CPU_DESCRIPTOR_HANDLE

Ein D3D12_CPU_DESCRIPTOR_HANDLE , der die Quelldeskriptoren beschreibt, aus denen das Kopieren beginnen soll.

Wichtig

Der SrcDescriptorRangeStart-Parameter muss sich in einem nicht shader-sichtbaren Deskriptor heap befinden. Dies liegt daran, dass shader-sichtbare Deskriptorheaps in WRITE_COMBINE Arbeitsspeicher oder lokalem GPU-Speicher erstellt werden können, was unerschwinglich langsam ist, aus denen gelesen werden kann. Wenn Ihre Anwendung Deskriptorheaps verwaltet, indem sie die deskriptoren, die für einen bestimmten Pass oder Frame erforderlich sind, von lokalen Deskriptorheaps "Storage" auf den GPU-gebundenen Deskriptorheap kopiert, verwenden Sie Shader-undurchsichtige Heaps für die Speicherheaps, und kopieren Sie nach Bedarf in den gpu-sichtbaren Heap.

[in] DescriptorHeapsType

Typ: D3D12_DESCRIPTOR_HEAP_TYPE

Der D3D12_DESCRIPTOR_HEAP_TYPE typisierte Wert, der den Typ des Deskriptorheaps angibt, mit dem kopiert werden soll. Dies ist erforderlich, da verschiedene Deskriptortypen unterschiedliche Größen aufweisen können.

Sowohl die Quell- als auch die Zielbeschreibungsheaps müssen denselben Typ aufweisen, andernfalls gibt die Debugebene einen Fehler aus.

Rückgabewert

Keine

Bemerkungen

Ziehen Sie diese Methode ggf. ID3D12Device::CopyDescriptors vor. Es kann aufgrund der linearen Art der Kopie eine bessere CPU-Cachefehlerrate aufweisen.

Anforderungen

   
Zielplattform Windows
Kopfzeile d3d12.h
Bibliothek D3D12.lib
DLL D3D12.dll

Weitere Informationen

Kopieren von Deskriptoren

ID3D12Device