Compartilhar via


Registro de Entrada

Registro de entrada do sombreador de vértice.

Os dados de cada vértice (usando um ou mais fluxos de vértice de entrada) são carregados nos registros de entrada de vértice antes que o sombreador de vértice seja executado. Os registros de entrada consistem em 16 vetores de ponto flutuante de quatro componentes, designados como v0 a v15. Esses registros são somente leitura. Um registro de entrada é associado a dados de vértice por meio de uma declaração de vértice.

As propriedades de registro a seguir controlam como cada registro se comporta:

Propriedade Descrição
Nome v[n] - n é um número de registro opcional. 0 é o valor padrão usado, se for omitido.
Contagem Um máximo de 16 registros, v0 - v15.
Permissões de E/S Somente leitura. Esse registro não pode ser gravado pela API ou dentro do sombreador.
Portas de leitura 1. Esse é o número de vezes que um registro pode ser lido em uma única instrução. Veja abaixo.

 

Qualquer instrução única pode acessar apenas um registro de entrada de vértice. No entanto, cada fonte na instrução pode girar e negar independentemente esse vetor conforme ele é lido.

Exemplo

Aqui está um exemplo usando uma declaração de vértice para associar dados de posição de vértice 2D para registrar v0.

A declaração de vértice pertence ao aplicativo:

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

Aqui está a declaração de sombreador de vértice correspondente:

dcl_position v0
Versões do sombreador de vértice 1_1 2_0 2_sw 2_x 3_0 3_sw
Registro de Posição x x x x x x

 

Registros de sombreador de vértice