Instruções - vs_3_0

Esta seção contém informações de referência para as instruções do sombreador de vértice versão 3_0.

Existem vários tipos de instruções de sombreador de vértice, conforme mostrado na tabela. As colunas à direita significam o seguinte:

  • Slots de instrução - Número de slots de instrução usados por cada instrução.
  • Setup - Instruções não aritméticas. Cada sombreador deve ter uma instrução de versão e deve ser a primeira instrução.
  • Aritmética - Estas instruções fornecem as operações matemáticas em um sombreador.
  • Textura - Estas instruções suportam a pesquisa de endereço de textura.
  • Controle de fluxo - Estas instruções adicionam controle de fluxo, como loops, repetições e se bool - vs...mais...endif comparações.
  • Novo - Estas instruções são novas nesta versão.

Conjunto de instruções

Designação Descrição Slots de instrução Configuração Aritmética Textura Controlo de caudal Novo
ABS - vs Valor absoluto 1 x
adicionar - vs Adicionar dois vetores 1 x
intervalo - vs Sair de um loop de - vs...endloop - vs ou rep...endrep bloco 1 x
break_comp - vs Quebrar condicionalmente de um loop de - vs...endloop - vs ou rep...endrep bloco, com uma comparação 3 x
quebra - vs Sair de um loop de - vs...endloop - vs ou rep...endrep bloco, com base em um predicado 3 x
chamada - vs Chamar uma sub-rotina 2 x
Callnz Bool - contra Chamar uma sub-rotina se um registro booleano não for zero 3 x
Callnz Pred - vs Chamar uma sub-rotina se um registro de predicados não for zero 3 x
CRS - vs Produto cruzado 2 x
dcl_usage entrada (sm1, sm2, sm3 - vs asm) Declarar registros de vértices de entrada (ver Registros - vs_3_0) 0 x
dcl_samplerType (sm3 - vs asm) Declarar a dimensão de textura para um amostrador 0 x x
def - vs Definir constants 0 x
defb - vs Declarar uma constante booleana 0 x
defi - vs Declarar uma constante inteira 0 x
dp3 - vs Produto de três pontos 1 x
dp4 - vs Produto de pontos com quatro componentes 1 x
dst - vs Distância 1 x
mais - vs Iniciar uma outra bloco 1 x
endif - vs Termine um se bool - vs...mais bloco 1 x
endloop - vs Fim de um loop de - vs bloco 2 x
endrep - vs Fim de um bloco repetido 2 x
exp - vs Precisão total 2x 1 x
expp - vs Precisão parcial 2x 1 x
FRC - vs Componente fracionário 1 x
se bool - vs Comece um se bool - vs bloco (usando uma condição booleana) 3 x
if_comp - vs Comece um se bool - vs bloco, com uma comparação 3 x
se pred - vs Comece um se bool - vs bloco com uma condição de predicado 3 x
rótulo - vs Rótulo 0 x
iluminado - vs Calcular iluminação 3 x
log - vs Log de precisão total₂(x) 1 x
logp - vs Log de precisão parcial₂(x) 1 x
loop - vs Loop 3 x
lrp - vs Interpolação linear 2 x
m3x2 - vs 3x2 multiplicar 2 x
m3x3 - vs Multiplicação 3x3 3 x
m3x4 - vs 3x4 multiplicar 4 x
m4x3 - vs Multiplicação 4x3 3 x
m4x4 - vs Multiplicação 4x4 4 x
louco - vs Multiplique e adicione 1 x
máximo - vs Máximo 1 x
min - vs Mínimo 1 x
mov - vs Mudança 1 x
mova - vs Mover dados de um registro de ponto flutuante para um registro inteiro 1 x
mul - vs Multiplicar 1 x
nop - vs Sem operação 1 x
NRM - vs Normalizar 3 x
pow - vs xy 3 x
rcp - vs Recíproco 1 x
rep - vs Repetir 3 x
ret - vs Fim de uma sub-rotina 1 x
rsq - vs Raiz quadrada recíproca 1 x
setp_comp - vs Definir o registo de predicados 1 x
sge - vs Maior ou igual comparar 1 x
sgn - vs Assinar 3 x
sincos - vs Seno e cosseno 8 x
slt - vs Menos do que comparar 1 x
sub - vs Subtrair 1 x
texldl - vs Carga de textura com nível de detalhe ajustável pelo utilizador Ver nota 1 x x
vs Versão 0 x

 

Observações:

  • se a textura for um mapa de cubo, ranhuras = 5; caso contrário, slots = 2

Vertex Shader Instruções