在OpenGL中,我创建了一个球体,并为每个片段赋予其标准化位置的颜色。球体位于原点,因此球体应覆盖红色,绿色和蓝色之间的平滑颜色渐变,而在每个轴上,颜色都是纯净的(x - 红色,y - 绿色,z - 蓝色)。
但不像我预期的那样,当我向下看Z / Blue Axis时,我会看到这种形状
我玩了一下,比较了不同颜色之间的渐变
在这张图片中,看起来绿色在某种程度上比蓝色更具优势,就像它喷在它上面一样。蓝色似乎也被黑人贬低了。
(俯视y轴,绿色为零) 在这个图像中似乎有一个更平滑的渐变,但我仍然说在图像中有更多的红色而不是蓝色,但这可能是我个人的感知,而且图片也不是完全对称的。
对我而言,由于某种原因,绿色和红色看起来比蓝色更占优势。
但最初提出这个问题的是我得到的奇怪的硬渐变(第一张图片)。我不认为这是我的着色器中的一个错误,因为我从不单独处理任何颜色。
什么可能导致这种行为?
PS:我还没有实现alpha,我没有在我的着色器中使用alpha(我使用vec4作为颜色,第4个组件总是1.0)