Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wählen Sie src1 aus, wenn src0 >= 0 ist. Wählen Sie andernfalls src2 aus. Der Vergleich erfolgt pro Kanal.
Syntax
cmp dst, src0, src1, src2 |
---|
where
- dst ist das Zielregister.
- src0 ist ein Quellregister.
- src1 ist ein Quellregister.
- src2 ist ein Quellregister.
Bemerkungen
Pixelshaderversionen | 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 |
Es gibt einige zusätzliche Einschränkungen für die Versionen 1_2 und 1_3:
- Jeder Shader kann bis zu drei Cmp-Anweisungen verwenden.
- Das Zielregister darf nicht mit den Quellregistern identisch sein.
In diesem Beispiel wird ein Vierkanalvergleich durchgeführt.
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
Zugehörige Themen