Freigeben über


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

Pixel-Shaderanweisungen