Compartilhar via


ps_1_1, ps_1_2, ps_1_3, ps_1_4

O assembler de sombreador de pixel é composto por um conjunto de instruções que operam em dados de pixel contidos em registros. As operações são expressas como instruções compostas por um operador e um ou mais operandos. As instruções usam registros para transferir dados dentro e fora da ALU do sombreador de pixel. Os registros também podem ser usados por algumas instruções para manter resultados temporários.

Nota

O suporte a HLSL para sombreador de pixel 1.x foi preterido.

 

Instruções

Há duas categorias principais de instruções de sombreador de pixel: instruções aritméticas e instruções de endereçamento de textura. Instruções aritméticas modificam os dados de cor. As operações de endereçamento de textura processam dados de coordenadas de textura e, na maioria dos casos, amostram uma textura. As instruções do sombreador de pixel são executadas por pixel; ou seja, eles não têm conhecimento de outros pixels no pipeline.

Instruções de endereçamento de textura consomem cada um dos slots, mas instruções aritméticas podem ser emparelhadas para habilitar os componentes de cor (RGB) e uma instrução de componente alfa em um único slot.

ps_1_1, ps_1_2, ps_1_3, instruções de ps_1_4 contém uma lista das instruções disponíveis.

Quando a multisampling está habilitada, os sombreadores de pixel são executados apenas uma vez por pixel, não uma vez para cada subpixel. A multiplicação múltipla só aumenta a resolução de bordas de polígono, bem como testes de profundidade e estêncil. Por exemplo, se 3x3 multisampling estiver habilitado e um triângulo sendo rasterizado for encontrado para cobrir cinco dos nove subpixels para um pixel específico, o sombreador de pixel será executado uma vez e o mesmo resultado de cor será aplicado a todos os cinco subpixels.

Registros

ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registra lista os diferentes registros usados pela ALU do sombreador.

Modificadores

Modificadores para ps_1_X podem ser usados para alterar a funcionalidade de uma instrução ou os dados lidos ou gravados em um registro.

O Direct3D 9 requer cálculos intermediários para manter a precisão de pelo menos 8 bits para todos os formatos de superfície. É recomendável ter precisão mais alta (12 bits) para matemática em estágio e saturação a 8 bits entre estágios de textura. Não há suporte para modos de arredondamento modificáveis ou exceções. A multiplicação deve ter suporte com uma precisão arredondada para mais próxima para manter a perda de precisão no mínimo.

Contagem de amostradores

O número de amostras de textura disponíveis é:

  • Para ps_1_0 - ps_1_3, o máximo é 4.
  • Para ps_1_4, o máximo é 6.

sombreadores de pixel