Compartilhar via


Instruções de ps_2_x

Esta seção contém informações de referência para a versão do sombreador de pixel 2_x instruções.

Há vários tipos de instruções de sombreador de pixel, 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 – um sombreador de pixel 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 são usadas para carregar e amostrar dados de textura e modificar coordenadas de textura.
  • Controle de fluxo – essas instruções fornecem controle de fluxo estático e dinâmico para a execução de instruções.
  • Novo – Estas instruções são novas para esta versão.

Conjunto de Instruções

Nome Descrição Slots de instrução Configuração Aritmética Textura Controle de fluxo Novo
abs – ps Valor absoluto 1 x
adicionar - ps Adicionar dois vetores 1 x
quebra de - ps Sair de um representante... Bloco de despir 1 x x
break_comp - ps Sair condicionalmente de um representante... bloco endrep, com uma comparação 3 x x
breakp – ps Sair de um representante... bloco endrep, com base em um predicado 3 x x
chamada - ps Chamar uma sub-rotina 2 x x
callnz bool - ps Chame uma sub-rotina se um registro booliano não for zero 3 x x
callnz pred - ps Chame uma sub-rotina se um registro de predicado não for zero 3 x x
cmp – ps Comparar a origem com 0 1 x
crs – ps Produto cruzado 2 x
dcl_samplerType (sm2, sm3 – ps asm) Declarar a dimensão de textura para um sampler 0 x
dcl - (sm2, sm3 - ps asm) Declare a associação entre registros de saída do sombreador de vértice e registros de entrada do sombreador de pixel. 0 x
def – ps Definir constantes 0 x
defb - ps Definir uma constante booliana 0 x x
defi – ps Definir uma constante de inteiro 0 x x
dp2add - ps Produto de ponto 2D e adicionar 2 x
dp3 – ps Produto de ponto 3D 1 x
dp4 – ps Produto de ponto 4D 1 x
dsx – ps Taxa de alteração na direção x 2 x x
dsy - ps Taxa de alteração na direção y 2 x x
- ps Iniciar um outro bloco 1 x x
endif – ps Encerrar um se... bloco else 1 x x
endrep - ps Fim de um bloco de repetição 2 x x
exp – ps Precisão total 2x 1 x
frc – ps Componente fracionário 1 x
se bool - ps Iniciar um bloco if 3 x x
if_comp - ps Iniciar um bloco if com uma comparação 3 x x
se antes - ps Iniciar um bloco if com a pré-indicação 3 x x
rótulo – ps Etiqueta 0 x x
log – ps Log de precisão completa₂(x) 1 x
lrp – ps Interpolar linearmente 2 x
m3x2 – ps Multiplicação 3x2 2 x
m3x3 – ps Multiplicação 3x3 3 x
m3x4 – ps Multiplicação 3x4 4 x
m4x3 – ps Multiplicação 4x3 3 x
m4x4 – ps Multiplicação 4x4 4 x
louco - ps Multiplicar e adicionar 1 x
max - ps Máximo 1 x
min – ps Mínimo 1 x
mov – ps Mover 1 x
mul – ps Multiplicar 1 x
nop – ps Nenhuma operação 1 x
nrm – ps Normalizar 3 x
pow - ps xy 3 x
ps Versão 0 x
rcp - ps Recíproca 1 x
rep – ps Repetir 3 x x
ret – ps Fim de uma sub-rotina 1 x x
rsq – ps Raiz quadrada recíproca 1 x
setp_comp Definir o registro de predicado 1 x x
sincos – ps Seno e cosseno 8 x
sub – ps Subtrair 1 x
texkill – ps Renderização de pixel de encerramento Consulte a observação 1 x
texld - ps_2_0 e até Amostrar uma textura Consulte a observação 2 x
texldb – ps Amostragem de textura com viés de nível de detalhes do w-component Consulte a observação 3 x
texldd - ps Amostragem de textura com gradientes fornecidos pelo usuário 3 x x
texldp – ps Amostragem de textura com divisão projetiva por w-component Consulte a observação 4 x

 

Anotações:

  1. Se D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT estiver definido, slots = 2; caso contrário, slots = 1.
  2. Se D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT estiver definida e a textura for um mapa de cubo, slots = 4; caso contrário, slot = 1.
  3. Se D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT estiver definido, slots = 6; caso contrário, slots = 1.
  4. Se D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT não estiver definido, slots = 1; caso contrário:

Instruções do sombreador de pixel