tex3Dgrad
Beispiele für eine 3D-Textur mit einem Farbverlauf, um die Mip-Ebene auszuwählen.
ret tex3Dgrad(s, t, ddx, ddy) |
---|
Parameter
Element | BESCHREIBUNG |
---|---|
s |
[in] Der Samplerzustand. |
T |
[in] Die Texturkoordinate. |
Ddx |
[in] Änderungsrate der Oberflächengeometrie in x-Richtung. |
ddy |
[in] Änderungsrate der Oberflächengeometrie in y-Richtung. |
Rückgabewert
Der Wert der Texturdaten.
Typbeschreibung
Name | Ein/Aus | Vorlagentyp | Komponententyp | Size |
---|---|---|---|---|
s | in | Objekt | sampler3D | 1 |
t | in | Vektor | schweben | 3 |
Ddx | in | Vektor | schweben | 3 |
ddy | in | Vektor | schweben | 3 |
Ret | out | Vektor | float | 4 |
Minimales Shadermodell
Diese Funktion wird in den folgenden Shadermodellen unterstützt.
Shadermodell | Unterstützt |
---|---|
Shadermodell 4 | ja (nur Pixelshader) |
Shadermodell 3 (DirectX HLSL) | ja (nur Pixelshader) |
Shadermodell 2 (DirectX HLSL) | ja (nur Pixelshader) |
Shadermodell 1 (DirectX HLSL) | Nein |
- Die Codeanordnung wird erheblich neu angeordnet, um Farbverlaufsberechnungen außerhalb der Flusssteuerung zu verschieben.
- Wenn die D3DPSHADERCAPS2_0-Obergrenze mit D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS festgelegt ist, ordnet der Compiler diese Funktion texldd zu.
Bemerkungen
Wenn die Flusssteuerung in einem Shader vorhanden ist, ist das Ergebnis einer Farbverlaufsberechnung, die innerhalb eines bestimmten Verzweigungspfads angefordert wird, mehrdeutig, wenn benachbarte Pixel separate Flusssteuerungspfade nach unten gehen können. Daher gilt es als unzulässig, einen Pixelshadervorgang zu verwenden, der eine Farbverlaufsberechnung an einer Stelle anfordert, die sich innerhalb eines Flusssteuerungskonstrukts befindet, das für einen bestimmten Grundtyp, der gerastert wird, pixelübergreifend variieren kann. Wenn eine Seite einer if-Anweisung mit dem Branch-Attribut eine Gradientenfunktion verwendet, kann ein Compilerfehler generiert werden. Weitere Informationen finden Sie unter if-Anweisung (DirectX HLSL).