dcl_input (sm4 - asm)

Dichiara un registro shader-input.

dcl_input vN[.mask][, interpolationMode]
Elemento Descrizione
vN
[in] Registro dei dati dei vertici.
  • N è un intero che identifica il numero di registro.
  • [.mask] è una maschera componente facoltativa (.xyzw) che specifica quale dei componenti del registro da usare.
interpolationMode
[in] Facoltativo. La modalità interpolazione, che è rispettata solo nei registri di input pixel shader. Può essere uno dei valori seguenti:
  • costante: non interpolare tra i valori del registro.
  • lineare- interpolare in modo lineare tra i valori del registro.
  • linearCentroid - uguale a lineare ma centroid bloccato quando si esegue il multicampionamento.
  • linearNoperspective - uguale a lineare ma senza correzione di prospettiva.
  • linearNoperspectiveCentroid - uguale a lineare, centroid bloccato quando multisampling, nessuna correzione di prospettiva.

Note di interpolazione

Per impostazione predefinita, gli attributi dei vertici vengono interpolati da un centro pixel durante l'esecuzione di antiasasing multisample. Se un centro pixel non è coperto, un attributo viene estrapolato a un centro pixel prima dell'interpolazione.

Per un pixel che non è completamente coperto o un attributo che non copre un centro pixel, è possibile specificare il campionamento centroid che forza il campionamento in una posizione all'interno dell'area coperta del pixel. Poiché una maschera di esempio (se usata) viene applicata prima del calcolo del centroid, qualsiasi posizione di esempio mascherata dalla maschera di esempio non può essere scelta come posizione centroide.

Questa istruzione si applica alle fasi dello shader seguenti:

Vertex shader Geometry shader Pixel shader
x x x

Per identificare l'input come valore di sistema, usare dcl_input_sv (sm4 - asm).

Questa istruzione è inclusa per facilitare il debug di uno shader nell'assembly; non è possibile creare uno shader nel linguaggio dell'assembly usando Shader Model 4.

Esempio

Di seguito sono riportati alcuni esempi.

dcl_input v3.xyz

dcl_input v0.x, linearCentroid

Modello di shader minimo

Questa funzione è supportata nei modelli shader seguenti.

Modello di shader Supportato
Modello shader 5
Modello shader 4.1
Modello shader 4
Modello shader 3 (DirectX HLSL) no
Modello shader 2 (DirectX HLSL) no
Modello shader 1 (DirectX HLSL) no

Shader Model 4 Assembly (DirectX HLSL)