if pred – ps
Beginn eines if bool - ps... else - ps... endif - ps block, mit der Bedingung aus dem Inhalt des Prädikatregisters.
Syntax
wenn [!] pred.replicateSwizzle |
---|
Hierbei gilt:
- [!] ist ein optionaler NOT-Modifizierer. Dadurch wird der Wert im Prädikatregister geändert.
- pred ist das Prädikatregister.
- replicateSwizzle ist eine einzelne Komponente, die in alle vier Komponenten kopiert (oder repliziert) wird (swizzled). Gültige Komponenten sind: [x, y, z, w] oder [r, g, b, a].
Bemerkungen
Pixelshaderversionen | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
if_pred | x | x | x | x |
Diese Anweisung wird verwendet, um einen Codeblock basierend auf einem Kanal des Prädikatregisters zu überspringen. Jeder if_pred Block muss mit einer else -ps- oder endif -ps-Anweisung enden .
Es gelten folgende Beschränkungen:
if_pred Blöcke können geschachtelt werden. Dies zählt zusammen mit if_comp Blöcken zur gesamt dynamischen Schachtelungstiefe.
Ein if_pred-Block kann einen Schleifenblock nicht überspannen. es sollte sich entweder vollständig darin befinden oder ihn umschließen.
Zugehörige Themen