texdp3tex - ps

Performs a three-component dot product and uses the result to do a 1D texture lookup.

Syntax

texdp3tex dst, src

 

where

  • dst is the destination register.
  • src is a source register.

Remarks

Pixel shader versions 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
texdp3tex x x

 

Texture registers must use the following sequence.

 
tex       t(n)        // Define tn as a standard 3-vector (tn must be 
                      // defined in some way before texdp3tex uses it)
texdp3tex t(m), t(n)  // where m > n                 
                      // Perform a three-component dot product between t(n) and 
                      // the texture coordinate set m. Use the scalar result to
                      // do a 1D texture lookup at texturestage m and place
                      // the result in t(m)

Here is more detail about how the dot product and texture lookup are done.

The texdp3tex instruction performs a three-component dot product.

u' = TextureCoordinates(stage m)UVW * t(n)RGB

The result is used to sample the texture at texture stage m by performing a 1D lookup.

t(m)RGBA = TextureSample(stage m)RGBA using (u',0,0) as coordinates

Pixel Shader Instructions