【发布时间】:2017-03-06 07:52:58
【问题描述】:
我正在阅读 HLSL 代码以试图弄清楚它是如何工作的,我遇到了一些看起来像这样的代码:
float aFloat = someVar > someConstant;
现在我想知道比较运算符在浮点赋值语句中到底在做什么。我知道 HLSL 与 C 类似,但我从未尝试过 C,尽管我打算在未来尝试一下,因此任何对此陈述的见解也会有所帮助。
【问题讨论】:
-
比较的结果是一个整数 - 0 或 1 - 所以分配给浮点数的值将是 0.0 或 1.0。
-
@JonathanLeffler 这就是我的想法。我对他们为什么将其分配给浮点数而不是布尔值感到有些困惑。现在我猜这只是为了让他们不必在以后的计算中进行投射。谢谢你证实了我的怀疑。如果您将评论放在答案中,我很乐意将其标记为。