Branch Node
Description
Provides a dynamic branch to the shader. If input Predicate is true the return output will be equal to input True, otherwise it will be equal to input False. This is determined per vertex or per pixel depending on shader stage. Both sides of the branch will be calculated in the shader, even if one is never output.
Ports
Name | Direction | Type | Binding | Description |
---|---|---|---|---|
Predicate | Input | Boolean | None | Determines which input to returned |
True | Input | Dynamic Vector | None | Returned if Predicate is true |
False | Input | Dynamic Vector | None | Returned if Predicate is false |
Out | Output | Boolean | None | Output value |
Generated Code Example
The following example code represents one possible outcome of this node.
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
{
Out = lerp(False, True, Predicate);
}