movc (sm4 – asm)
Movimentação condicional em termos de componente.
movc[_sat] dest[.mask], src0[.swizzle], [-]src1[_abs][.swizzle], [-]src2[_abs][.swizzle], |
---|
Item | Descrição |
---|---|
Dest |
[in] O endereço do resultado da operação. Se src0, dest = src1 else dest = src2 |
src0 |
[in] Os componentes nos quais testar a condição. |
src1 |
[in] Os componentes a serem movidos. |
src2 |
[in] Os componentes a serem movidos. |
Comentários
O exemplo a seguir mostra como usar esta instrução.
for each component in dest[.mask]
if the corresponding component in src0 (POS-swizzle)
has any bit set
{
copy this component (POS-swizzle) from src1 into dest
}
else
{
copy this component (POS-swizzle) from src2 into dest
}
endfor
Os modificadores em src1 e src2, além de swizzle, pressupõem que os dados sejam de ponto flutuante. A ausência de modificadores apenas move dados sem alterar bits.
Esta instrução se aplica aos seguintes estágios de sombreador:
Sombreador de vértice | Sombreador de geometria | Sombreador de pixel |
---|---|---|
x | x | x |
Modelo de sombreador mínimo
Essa função tem suporte nos modelos de sombreador a seguir.
Modelo de Sombreador | Com suporte |
---|---|
Modelo de sombreador 5 | sim |
Modelo de sombreador 4.1 | sim |
Modelo de sombreador 4 | sim |
Modelo de sombreador 3 (DirectX HLSL) | não |
Modelo de sombreador 2 (DirectX HLSL) | não |
Modelo de sombreador 1 (DirectX HLSL) | não |