texdepth – ps
Berechnen Sie die Tiefenwerte, die im Vergleichstest zum Tiefenpuffer für dieses Pixel verwendet werden sollen.
Syntax
texdepth dst |
---|
where
- dst ist das Zielregister.
Bemerkungen
Pixel-Shaderversionen | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texdepth | x |
Diese Anweisung verwendet r5.r / r5.g im Tiefenpuffervergleichstest für dieses Pixel. Die Daten in den blauen und alpha-Kanälen werden ignoriert. Wenn r5.g = 0, das Ergebnis von r5.r / r5.g = 1,0.
Das temporäre Register r5 ist das einzige Register, das diese Anweisung verwenden kann.
Nach dem Ausführen dieser Anweisung ist das temporäre Register r5 nicht mehr für die zusätzliche Verwendung im Shader verfügbar.
Beim Multisampling beseitigt die Verwendung dieser Anweisung den größten Vorteil des Tiefenpuffers mit höherer Auflösung. Da der Pixel-Shader einmal pro Pixel ausgeführt wird, wird der einzelne Tiefenwert von texm3x2depth – ps oder texdepth für jeden Der Subpixel-Tiefenvergleichstests verwendet.
Beispiele
Hier sehen Sie ein Beispiel für die Verwendung von texdepth.
ps_1_4
texld r0, t0 // Sample texture from texture stage 0 (dest
// register number) into r0
// Use texture coordinate data from t0
texcrd r1.rgb, t1 // Load a second set of texture coordinate data into r1
add r5.rg, r0, r1 // Add the two sets of texture coordinate data
phase // Phase marker, required when using texdepth instruction
texdepth r5 // Calculate pixel depth as r5.r / r5.g
// Do other color calculations with shader output r0
Zugehörige Themen