Deskriptorheaps

Ein Deskriptorheap ist eine Sammlung zusammenhängender Zuordnungen von Deskriptoren, eine Zuordnung für jeden Deskriptor.

In diesem Abschnitt

Thema BESCHREIBUNG
Übersicht über Deskriptorheaps
Deskriptorheaps enthalten viele Objekttypen, die nicht Teil eines Pipelinestatusobjekts (Pipeline State Object, PSO) sind, z. B. Shader Resource Views (SRVs), Unordered Access Views (UAVs), Constant Buffer Views (CBVs) und Sampler.
Hardwaretarife
Die Hardwareebenen von Tier 1 bis Tier 3 verfügen über immer mehr Ressourcen für die Pipeline.
Für den Shader sichtbare Deskriptorheaps
Shader-Deskriptorheaps sind Deskriptorheaps, auf die von Shadern über Deskriptortabellen verwiesen werden kann.
Für den Shader nicht sichtbare Deskriptorheaps
Einige Deskriptorheaps können von Shadern nicht über Deskriptortabellen referenziert werden, sondern sind entweder vorhanden, um die App beim Staging der Deskriptoren vor dem Aufzeichnen einer Befehlsliste zu unterstützen oder weil kein shader-sichtbarer Heap erforderlich ist.
Erstellen von Deskriptorheaps
Um einen Deskriptorheap zu erstellen und zu konfigurieren, müssen Sie einen Deskriptor-Heaptyp auswählen, bestimmen, wie viele Deskriptoren er enthält, und Flags festlegen, die angeben, ob die CPU sichtbar und/oder Shader sichtbar ist.
Festlegen und Auffüllen von Deskriptorheaps
Die Deskriptor-Heaptypen, die in einer Befehlsliste festgelegt werden können, sind diejenigen, die Deskriptoren enthalten, für die Deskriptortabellen verwendet werden können (höchstens jeweils eine nacheinander).
Zusammenfassung der Deskriptorheap-Konfigurierbarkeit
In der folgenden Tabelle sind Informationen zur Unterstützung von Shader- und Nicht-Shader-Heaps zusammengefasst.

Deskriptoren

Deskriptortabellen

ID3D12DescriptorHeap

Ressourcenbindung

Stammsignaturen