我试图检查vec3值是否具有相同的组件。
int same = 0;
vec3 v1 = vec3(1.0f, 0.0f, 0.0f);
vec3 v2 = vec3(0.0f, 0.0f, 0.0f);
if (v1 == v2) // <- this part
{
same = 1;
}
是否= vec3类型的正确关系运算符?
如果没有,我可以使用什么(操作符和函数也可以)来比较vec3值?
答案 0 :(得分:1)
GLSL 4.5 Specification,第5.9节规定:
等于运算符等于(==),而不等于(!=)对所有类型[...]进行操作。它们会产生标量布尔值。 [...]对于向量,矩阵,结构和数组, 一个操作数的所有组件,成员或元素必须等于相应的组件, 成员,或操作数的另一个操作数中的元素被认为是相等的。
回答你的问题:是的,==
运算符比较天气两个向量在所有组件中具有相同的值。