Ressourcenbindung
Bindung ist der Prozess, bei dem Ressourcenobjekte mit den Shadern der Grafikpipeline verlinkt werden.
In diesem Abschnitt
| Thema | BESCHREIBUNG |
|---|---|
| Übersicht über Ressourcenbindungen | Der Schlüssel zur Ressourcenbindung in DirectX 12 sind die Konzepte eines Deskriptors, einer Deskriptortabelle, eines Deskriptorhaps und einer Stammsignatur. |
| Unterschiede im Bindungsmodell von Direct3D 11 | Eine der wichtigsten Entwurfsentscheidungen hinter der DirectX12-Bindung besteht in der Trennung von anderen Verwaltungsaufgaben. Dies stellt einige Anforderungen an die App, um bestimmte potenzielle Naturkatastrophen zu verwalten. |
| Deskriptoren | Deskriptoren sind die primäre Bindungseinheit für eine einzelne Ressource in D3D12. |
| Deskriptorheaps | Ein Deskriptorhap ist eine Sammlung zusammenhängender Zuordnungen von Deskriptoren, eine Zuordnung für jeden Deskriptor. |
| Deskriptortabellen | Eine Deskriptortabelle ist logisch ein Array von Deskriptoren. |
| Stammsignaturen | Die Stammsignatur definiert, welche Ressourcentypen an die Grafikpipeline gebunden sind. |
| Abfragen der Funktionalität | Ihre Anwendung kann mithilfe eines Aufrufs von ID3D12Device::CheckFeatureSupportden Grad der Unterstützung für die Ressourcenbindung und viele andere Features entdecken. |
| Ressourcenbindung in HLSL | In diesem Thema werden einige spezifische Features der Verwendung des HLSL-Shadermodells 5.1 (High Level Shader Language) mit Direct3D 12 beschrieben. Alle Direct3D 12-Hardware unterstützt shader Model 5.1, sodass die Unterstützung für dieses Modell nicht von der Hardwarefeatureebene abhängig ist. |
| UMA-Optimierungen: Barrierefreie CPU-Texturen und Swizzle-Standardtest | UMA-GPUs (Universal Memory Architecture) bieten einige Effizienzvorteile gegenüber diskreten GPUs, insbesondere bei der Optimierung für mobile Geräte. Wenn Ressourcen CPU-Zugriff erhalten, wenn die GPU UMA ist, kann der Kopieraufwand zwischen CPU und GPU reduziert werden. Es wird zwar nicht empfohlen, anwendungen blind CPU-Zugriff auf alle Ressourcen in UMA-Entwürfen zu geben, aber es gibt Möglichkeiten, die Effizienz zu verbessern, indem sie den richtigen CPU-Zugriff auf ressourcen erhalten. Im Gegensatz zu diskreten GPUs kann die CPU technisch gesehen einen Zeiger auf alle Ressourcen haben, auf die die GPU zugreifen kann. |
| Typierte ungeordnete Zugriffsansichtslasten | Unordered Access View (UAV) Typed Load ist die Fähigkeit eines Shaders, aus einem UAV mit einem bestimmten DXGI-FORMAT zu _ lesen. |
| Menge gekachelter Ressourcen | Volumetexturen (3D) können als gekachelte Ressourcen verwendet werden, und es wird darauf hingeendet, dass die Kachelauflösung dreidimensional ist. |
| Unterressourcen | Beschreibt, wie eine Ressource in Unterressourcen unterteilt wird und wie auf eine einzelne, mehrere oder einen Slice von Unterressourcen verwiesen wird. |