if bool - ps
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