【发布时间】:2012-09-26 07:25:53
【问题描述】:
我想渲染从一侧到另一侧的颜色渐变。如图所示,颜色渐变从最小边界框开始到最大边界框。代码如下。
Point c = (VERTICES[i] - min) / (max - min);
p_COLOR[i].setRGB(c.red, c.green, c.blue);
这里的问题是,颜色渐变不遵循任何方向(例如从下到上:下侧有红色和蓝紫色两种颜色)。但我需要应用从 -x 到 x 或 -y 到 y 或 -z 到 z 的渐变,这意味着如果红色从 -y 开始,那么只有红色覆盖 -y 侧区域,然后通过将渐变从 -y 移动到 y , 以红后蓝后绿后黄等递增颜色。下边不应该有红色和蓝紫色,必须只有红色然后向上移动到蓝色然后绿色等等。
我该怎么做?方程是什么?
【问题讨论】:
-
可能想查看HSV color space,并将您的渐变定义为色调。听起来它比 RGB 更符合这个描述。不过方程式有点复杂。
-
感谢@Tim 我已经转换并列出了 HSL 颜色。 for(int i=0; i
标签: opengl opengl-es rendering texture-mapping opengl-3