cmp - ps
Choisissez src1 si src0 >= 0. Sinon, choisissez src2. La comparaison est effectuée par canal.
Syntaxe
cmp dst, src0, src1, src2 |
---|
where
- dst est le registre de destination.
- src0 est un registre source.
- src1 est un registre source.
- src2 est un registre source.
Notes
Versions du nuanceur de pixels | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
cmp | x | x | x | x | x | x | x | x |
Il existe quelques limitations supplémentaires pour les versions 1_2 et 1_3 :
- Chaque nuanceur peut utiliser jusqu’à un maximum de trois instructions cmp.
- Le registre de destination ne peut pas être identique à l’un des registres sources.
Cet exemple effectue une comparaison à quatre canaux.
ps_1_4
def c0, -0.6, 0.6, 0, 0.6
def c1 0,0,0,0
def c2 1,1,1,1
mov r1, c1
mov r2, c2
cmp r0, c0, r1, r2 // r0 is assigned 1,0,0,0 based on the following:
// r0.x = c2.x because c0.x < 0
// r0.y = c1.y because c0.y >= 0
// r0.z = c1.z because c0.z >= 0
// r0.w = c1.w because c0.w >= 0
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour