Freigeben über


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

Semantik

Shadermodell 5