Freigeben über


D3D12_VIEW_INSTANCING_TIER-Enumeration (d3d12.h)

Gibt die Ebenenebene an, auf der die Ansichtsrefinanzierung unterstützt wird.

Syntax

typedef enum D3D12_VIEW_INSTANCING_TIER {
  D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED = 0,
  D3D12_VIEW_INSTANCING_TIER_1 = 1,
  D3D12_VIEW_INSTANCING_TIER_2 = 2,
  D3D12_VIEW_INSTANCING_TIER_3 = 3
} ;

Konstanten

 
D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED
Wert: 0
Die Ansichtsrefinanzierung wird nicht unterstützt.
D3D12_VIEW_INSTANCING_TIER_1
Wert: 1
Die Ansichtsrefinanzierung wird nur von Schleifen auf Draw-Call-Ebene unterstützt.
D3D12_VIEW_INSTANCING_TIER_2
Wert: 2
Die View-Instancing wird im schlimmsten Fall von der Schleife auf Draw-Call-Ebene unterstützt, aber die GPU kann unter bestimmten, architekturabhängigen Umständen eine effizientere Darstellung der Ansicht durchführen.
D3D12_VIEW_INSTANCING_TIER_3
Wert: 3
Die Ansichtsrefinanzierung wird unterstützt, und die Instancing beginnt mit der ersten Shaderphase, die auf SV_ViewID verweist, oder mit Rasterung, wenn keine Shaderstufenverweise SV_ViewID. Dies bedeutet, dass redundante Arbeit in Ansichtsinstanzen eliminiert wird, wenn sie nicht von SV_ViewID abhängig ist. Vor der Rasterung wird Arbeit, die nicht direkt von SV_ViewID abhängt, für alle Ansichten freigegeben. nur Arbeiten, die von SV_ViewID für jede Ansicht wiederholt werden.

Hinweis Wenn ein Hullshader Tessellationsfaktoren erzeugt, die von SV_ViewID abhängig sind, müssen die Tesselation und alle nachfolgenden Arbeiten pro Ansicht wiederholt werden. Wenn die vom Geometry-Shader erzeugte Geometriemenge von SV_ViewID abhängt, muss der Geometrieshader pro Ansicht wiederholt werden, bevor mit der Rasterung fortgefahren wird.

 

Anzeigen instance Maskierung wirkt sich nur darauf aus, ob Arbeit, die direkt von SV_ViewID abhängt, ausgeführt wird, nicht die gesamte Schleifeniteration (pro Ansicht). Wenn die Ansicht instance Maske nicht 0 ist, werden einige Arbeiten, die von SV_ViewID abhängig sind, möglicherweise weiterhin auf maskierten Pixeln ausgeführt, haben jedoch keine extern sichtbare Wirkung. Beispielsweise werden keine UAV-Schreibvorgänge ausgeführt, und das Beschneiden/Rastern wird nicht aufgerufen. Wenn die Ansicht instance Maske 0 ist, wird keine Arbeit ausgeführt, einschließlich der Arbeit, die nicht von SV_ViewID abhängig ist.

Anforderungen

Anforderung Wert
Header d3d12.h

Weitere Informationen

Kernaufzählungen