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