这可能很奇怪,因为据我所知,向量和标量不能相加。但是我发现 this sample 在第157行,它执行以下操作:
hsv.x + vec3(0.,2./3.,1./3.)
哪里 hsv.x 碰巧是一个 float vec3 .
hsv.x
float
vec3
如果将标量添加到向量,则标量将添加到向量的每个分量,因为 The OpenGL Shading Language
独立应用于向量或矩阵的每个分量,产生相同大小的向量