如何使用变量在着色器中的两个公式之间切换?
How can I use a variable to switch between two formula in a shader?
我做了一个着色器,我想让它在另一个方向上工作。由于坐标系是从 0 到 1,我需要反转函数的输出,但我无法绕过它。归结为这个“简单”的问题:
在一种情况下,我希望它是 y = 1 - x,而在另一种情况下,我希望它是 y = x。我如何使用变量 a
使得如果 a == 0
那么 y = 1 - x
或者如果 a == 1
那么 y = x
?不使用分支。
如果你有 y = a * x + (1 - A) * (1 - x)
那么你可以让 A
在 0 或 1 之间切换以在 y = 1 - x
和 y = x
之间切换。
我做了一个着色器,我想让它在另一个方向上工作。由于坐标系是从 0 到 1,我需要反转函数的输出,但我无法绕过它。归结为这个“简单”的问题:
在一种情况下,我希望它是 y = 1 - x,而在另一种情况下,我希望它是 y = x。我如何使用变量 a
使得如果 a == 0
那么 y = 1 - x
或者如果 a == 1
那么 y = x
?不使用分支。
如果你有 y = a * x + (1 - A) * (1 - x)
那么你可以让 A
在 0 或 1 之间切换以在 y = 1 - x
和 y = x
之间切换。