texld - ps_1_4

Carica il registro di destinazione con dati di colore (RGBA) campionati usando il contenuto del registro di origine come coordinate della trama. La trama campionata è la trama associata al numero del registro di destinazione.

texld dst, src

 

Registri

Valore Descrizione Vn Cn Tn Rn Versione del pixel shader
Dst Registro di destinazione x 1_4
src Registro di origine x 1_4 fase 1
x x Fase 1_4

 

Quando si usa r(n) come registro di origine, i primi tre componenti (XYZ) devono essere stati inizializzati nella fase precedente dello shader.

Per altre informazioni sui registri, vedere ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registri.

Commenti

Questa istruzione campiona la trama nella fase di trama associata al numero di registro di destinazione. La trama viene campionata usando i dati delle coordinate della trama dal registro di origine.

La sintassi per le istruzioni texld e texcrd espone il supporto per una divisione proiettata con un modificatore registro trama. Per pixel shader versione 1.4, il flag di trasformazione trama D3DTTFF_PROJECTED viene sempre ignorato.

Regole per l'uso di texld:

  1. Lo stesso modificatore .xyz o xyw deve essere applicato a ogni lettura di un singolo registro t(n) all'interno di istruzioni texcrd o texld. Se in t(n) register reads viene usato .xyw, questo può essere combinato con altre letture dello stesso registro t(n) usando .xyw_dw.
  2. Il modificatore di origine _dz è valido solo in texld con registro di origine r(n) (solo fase 2).
  3. Il modificatore di origine _dz può essere usato non più di due volte per ogni shader.
Versioni del pixel shader 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
texld x

 

Esempio

L'istruzione texld offre un certo controllo sui componenti dei dati delle coordinate della trama di origine. Di seguito è riportato il set completo di sintassi consentite per texld e include tutti i modificatori, i selettori e le combinazioni di maschere di scrittura valide per il registro di origine.

texld  r(m), t(n).xyz
// Uses xyz from t(n) to sample 1D, 2D, or 3D texture
texld  r(m), t(n)
// Same as previous
texld  r(m), t(n).xyw
// Uses xyw (skipping z) from t(n) to sample 1D, 2D or 3D texture
texld  r(m), t(n)_dw.xyw  
// Samples 1D or 2D texture at x/w, y/w from t(n). The result
// is undefined for a cube-map lookup.
texld  r(m), r(n).xyz
// Samples 1D, 2D, or 3D texture at xyz from r(m) 
// This is possible in the second phase of the shader
texld  r(m), r(n)
// Same as previous
texld  r(m), r(n)_dz.xyz
// Samples 1D or 2D texture at x/z, y/z from r(m)
// Possible only in second phase
// The result is undefined for a cube-map lookup
texld  r(n), r(n)_dz
// Same as previous

Istruzioni per pixel shader