title | description | ms.assetid | ms.topic | ms.date | topic_type | api_name | api_type | api_location | |
---|---|---|---|---|---|---|---|---|---|
if pred - ps |
Start of an if bool - ps...else - ps...endif - ps block, with the condition taken from the content of the predicate register. |
7b43bf71-a2e9-468f-805f-620de065db08 |
reference |
05/31/2018 |
|
Start of an if bool - ps...else - ps...endif - ps block, with the condition taken from the content of the predicate register.
if [!]pred.replicateSwizzle |
---|
Where:
- [!] is an optional NOT modifier. This modifies the value in the predicate register.
- pred is the Predicate Register.
- replicateSwizzle is a single component that is copied (or replicated) to all four components (swizzled). Valid components are: [x, y, z, w] or [r, g, b, a].
Pixel shader versions | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
if_pred | x | x | x | x |
This instruction is used to skip a block of code, based on a channel of the predicate register. Each if_pred block must end with an else - ps or endif - ps instruction.
Restrictions include:
if_pred blocks can be nested. This counts to the total dynamic nesting depth along with if_comp blocks.
An if_pred block cannot straddle a loop block; it should either be completely inside it or surround it.