Registro di input

Registro di input del vertex shader.

I dati di ogni vertice (usando uno o più flussi di vertici di input) vengono caricati nei registri di input dei vertici prima dell'esecuzione del vertex shader. I registri di input sono costituiti da 16 vettori a virgola mobile a quattro componenti, designati da v0 a v15. Questi registri sono di sola lettura. Un registro di input è associato ai dati dei vertici tramite una dichiarazione di vertice.

Le proprietà del registro seguenti controllano il comportamento di ogni registro:

Proprietà Descrizione
Nome v[n] - n è un numero di registro facoltativo. 0 è il valore predefinito utilizzato, se viene omesso.
Conteggio Massimo 16 registri, v0 - v15.
Autorizzazioni di I/O Di sola lettura. Questo registro non può essere scritto dall'API o all'interno dello shader.
Porte di lettura 1. Questo è il numero di volte in cui un registro può essere letto all'interno di una singola istruzione. Vedere qui di seguito.

 

Qualsiasi singola istruzione può accedere a un solo registro di input vertice. Tuttavia, ogni origine nell'istruzione può scorrere in modo indipendente e negare tale vettore durante la lettura.

Esempio

Di seguito è riportato un esempio che usa una dichiarazione di vertice per associare i dati di posizione dei vertici 2D per registrare v0.

La dichiarazione dei vertici appartiene all'applicazione:

D3DVERTEXELEMENT9 decl[] =
{
    { 0, 0, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },
      D3DDECL_END()
};

Ecco la dichiarazione del vertex shader corrispondente:

dcl_position v0
Versioni del vertex shader 1_1 2_0 2_sw 2_x 3_0 3_sw
Registro posizioni x x x x x x

 

Registri vertex shader