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.
Há 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.
- Instalação – 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 – essas instruções fornecem as operações matemáticas em um sombreador.
- Textura – essas instruções dão suporte à pesquisa de endereço de textura.
- Controle de fluxo – essas instruções adicionam controle de fluxo, como loops, repetições e se bool - vs... senão... comparações endif .
- Novo – estas instruções são novas para esta versão.
Conjunto de instruções
Nome | Descrição | Slots de instrução | Instalação | Aritmético | Textura | Controle de fluxo | Novo |
---|---|---|---|---|---|---|---|
abs - vs | Valor absoluto | 1 | x | ||||
add - vs | Adicionar dois vetores | 1 | x | ||||
break - vs | Sair de um loop - vs... endloop - vs ou rep... Bloco endrep | 1 | x | ||||
break_comp - vs | Sair condicionalmente de um loop - vs... endloop - vs ou rep... bloco endrep , com uma comparação | 3 | x | ||||
breakp - vs | Sair de um loop - vs... endloop - vs ou rep... bloco endrep , com base em um predicado | 3 | x | ||||
call - vs | Chamar uma sub-rotina | 2 | x | ||||
callnz bool - vs | Chamar uma sub-rotina se um registro booliano não for zero | 3 | x | ||||
callnz pred - vs | Chamar uma sub-rotina se um registro de predicado não for zero | 3 | x | ||||
crs - vs | Produto cruzado | 2 | x | ||||
dcl_usage entrada (sm1, sm2, sm3 - vs asm) | Declarar registros de vértice de entrada (consulte Registros – vs_3_0) | 0 | x | ||||
dcl_samplerType (sm3 - vs asm) | Declarar a dimensão de textura para um sampler | 0 | x | x | |||
def - vs | Definir constantes | 0 | x | ||||
defb - vs | Declarar uma constante booliana | 0 | x | ||||
defi - vs | Declarar uma constante de inteiro | 0 | x | ||||
dp3 - vs | Produto de ponto de três componentes | 1 | x | ||||
dp4 - vs | Produto de ponto de quatro componentes | 1 | x | ||||
dst - vs | Distância | 1 | x | ||||
else - vs | Iniciar um outro bloco | 1 | x | ||||
endif - vs | Encerrar um se bool - vs... bloco else | 1 | x | ||||
endloop - vs | Fim de um loop – vs block | 2 | x | ||||
endrep - vs | Fim de um bloco de repetição | 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 | Iniciar um se bool – vs block (usando uma condição booliana) | 3 | x | ||||
if_comp - vs | Iniciar um se bool – vs block, com uma comparação | 3 | x | ||||
se pred - vs | Iniciar um se bool – vs block com uma condição de predicado | 3 | x | ||||
label - vs | Rótulo | 0 | x | ||||
aceso - vs | Calcular iluminação | 3 | x | ||||
log - vs | Log de precisão completa₂(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 | Multiplicação 3x2 | 2 | x | ||||
m3x3 - vs | Multiplicação 3x3 | 3 | x | ||||
m3x4 - vs | Multiplicação 3x4 | 4 | x | ||||
m4x3 - vs | Multiplicação 4x3 | 3 | x | ||||
m4x4 - vs | Multiplicação 4x4 | 4 | x | ||||
louco - vs | Multiplicar e adicionar | 1 | x | ||||
max - vs | Máximo | 1 | x | ||||
min - vs | Mínimo | 1 | x | ||||
mov - vs | Mover | 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 | Nenhuma operação | 1 | x | ||||
nrm - vs | Normalizar | 3 | x | ||||
pow - vs | xy | 3 | x | ||||
rcp - vs | Recíproca | 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 registro de predicado | 1 | x | ||||
sge - vs | Comparação maior ou igual a | 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 detalhes ajustável pelo usuário | Consulte a observação 1 | x | x | |||
Vs | Versão | 0 | x |
Observações:
- se a textura for um mapa de cubo, slots = 5; caso contrário, slots = 2
Tópicos relacionados