Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Start of an if block.
Syntax
if bool |
---|
Where:
- bool is a bool (Boolean) register number. See Constant Boolean Register.
Remarks
Pixel shader versions | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
if bool | x | x | x | x |
If the source Boolean register in the if statement is true, the code enclosed by the if statement and the matching endif - ps or else - ps is executed. Otherwise, the code enclosed by the else - ps...endif - ps statements is executed. This instruction consumes one instruction slot.
An if block can be nested.
An if block cannot straddle a loop block.
An if block can be followed by a statement block, and/or an else - ps instruction, and/or an endif - ps instruction.
Example
This instruction provides conditional static flow control.
defb b3, true
if b3
// Instructions to run if b3 is nonzero
else
// Instructions to run otherwise
endif
Related topics