Compartilhar via


Swizzling de registro de origem (referência vs HLSL)

Antes que uma instrução seja executada, os dados em um registro de origem são copiados para um registro temporário. Swizzling refere-se à capacidade de copiar qualquer componente de registro de origem para qualquer componente de registro temporário. O swizzling não afeta os dados de registro de origem.

Swizzling de componente

Conforme mostrado na tabela a seguir, o giro pode ser aplicado aos componentes individuais dos dados de registro de origem (em que é um dos registros de entrada de sombreador de vértice válidos – vs_1_1).

Modificador de componente Descrição
r.[xyzw][xyzw][xyzw][xyzw] Swizzle de origem

 

  • Todos os quatro componentes são sempre copiados. Se menos de quatro componentes forem especificados, o último componente será repetido (xy significa .xyyy). Se nenhum componente for especificado, x será repetido (.xxxx).
  • Os componentes podem aparecer em qualquer ordem. v0.ywx resulta em v0.ywxx.
  • Os componentes rgba podem ser usados respectivamente para xyzw (r para x, g para b etc.).
  • Estas instruções implementam swizzles de componente único de registro de origem: exp, expp, log, logp, pow, rcp, rsq. O resultado dessas instruções é copiado para todos os quatro componentes de registro de destino.

O swizzling não pode ser usado nas instruções m3x2 - vs, m3x3 - vs, m4x3 - vs e m4x4 - vs .

Modificadores de registro de sombreador de vértice