SV_TessFactor
Definiert den Tessellationsbetrag an jedem Rand eines Patches.
Typ
Typ | Eingabetopologie |
---|---|
float[4] | Quad-Patch |
float[3] | tri patch |
float[2] | isoline |
Tessellationsfaktoren müssen als Array deklariert werden; sie können nicht in einen einzigen Vektor gepackt werden.
Bemerkungen
Der Wert für den Tessellationsfaktor muss während der Patchkonstantenfunktion des Hull-Shaders definiert werden.
Erforderlicher Ausgabewert für den Hullshader bei Verwendung von Quad- oder Tri-Patches. Dieser Wert ist auch ein erforderlicher Eingabewert für den Domänenshader, um die Patchkonstantendatensignaturen zwischen den Tessellationsphasen abzugleichen.
Bei einer Isolinie ist der erste Wert in SV_TessFactor der Tessellationsfaktor der Zeilendichte, der zweite Wert der Tessellationsfaktor für Zeilendetails.
Tri Patch Tessellation Factors
Die erste Komponente stellt den Tesselationsfaktor für den u==0-Rand des Patches bereit. Die zweite Komponente stellt den Tesselationsfaktor für den v==0-Rand des Patches bereit. Die dritte Komponente stellt den Tesselationsfaktor für den w==0-Rand des Patches bereit.
Quad Patch Tessellation Factors
Die erste Komponente stellt den Tesselationsfaktor für den u==0-Rand des Patches bereit. Die zweite Komponente stellt den Tesselationsfaktor für den v==0-Rand des Patches bereit. Die dritte Komponente stellt den Tesselationsfaktor für den Rand von u==1 des Patches bereit. Die vierte Komponente stellt den Tesselationsfaktor für den v==1-Rand des Patches bereit. Die Reihenfolge der Kanten erfolgt im Uhrzeigersinn, beginnend mit der Kante u==0, die die linke Seite des Patches ist, und von der Kante v==0, der die obere Stelle des Patches darstellt.
Diese Funktion wird in den folgenden Shadertypen unterstützt:
Scheitelpunkt | Hull | Domain | Geometrie | Pixel | Compute |
---|---|---|---|---|---|
x | x |
Siehe auch