【发布时间】:2011-03-14 09:35:00
【问题描述】:
我已经从苹果网站下载了 GLGravity 项目。 我正在尝试改变茶壶的颜色,但它没有改变
【问题讨论】:
我已经从苹果网站下载了 GLGravity 项目。 我正在尝试改变茶壶的颜色,但它没有改变
【问题讨论】:
GLGravity 示例最后一次更新于 2010 年 7 月 6 日,使用 GLES 1.x 固定管道,并具有内置照明支持。因此,茶壶的颜色是由 GLGravityView.m 的第 125 到 147 行设置的光和材料属性决定的。
在实践中,您会注意到 matAmbient、matDiffuse 和 matSpecular 是不同强度的白色。所以物体本身是白色的。这意味着您看到的颜色完全由光定义。从概念上讲,这可能是一种奇怪的方法,但确实如此。
最终效果是茶壶的颜色由 lightAmbient 和 lightDiffuse 定义。 lightAmbient 是另一种白色阴影,lightDiffuse 是您想要使用的。立即下载它是(在第 126 行):
const GLfloat lightDiffuse[] = {1.0, 0.6, 0.0, 1.0};
给人一种隐约的铜色外观。如果您将其更改为:
const GLfloat lightDiffuse[] = {0.0, 0.0, 1.0, 1.0};
然后你会得到一个蓝色的茶壶。该向量的前三个元素是 [0.0, 1.0] 范围内的 R、G、B。设置它们以改变茶壶的整体颜色。
【讨论】: