2009-10-24 63 views
2

正是这样说的:我有一些绘制GLUT立方体的代码,但它们都是灰色的。我如何让他们有不同的颜色?我如何给GLUT立方体添加不同的颜色?

到目前为止我尝试过的一切都失败了。我认为我的问题是我试图使用OpenGL函数来改变它们的颜色,但是GLUT正在维护它自己的内部颜色或材质数据,我不知道如何让它改变这些数据。

这只是针对在线游戏的测试客户端的填充图形,所以它们不必看起来不错,我只需要能够将事情分开。我知道GLUT并不是很好,所以如果有人想发布一个用普通的OpenGL而不是glutCube绘制立方体的例子,那么我都是耳朵。我并不在乎如何在屏幕上获得立方体,这不是我想要花费大量时间的代码的一部分。我有一个正在做真实图形的合作伙伴;我只需要显示一些内容,以便我可以看到我的代码正在做什么。

我使用OpenGL/GLUT从被称为木卫一的语言,但它暴露的API应该是一样的,如果我是从C.

+0

某些代码会很有用。你在使用材料吗?有光源吗? – 2009-10-24 04:00:56

回答

2

事实证明,如果我只是做:

  glEnable(GL_COLOR_MATERIAL) 

那么它使物料跟踪任何颜色我设置与glColor,启用照明时也是如此。

2

调用它只是与glColor()设置颜色事前。如果您使用的是灯光(即启用了GL_LIGHTING),则您将不得不使用glMaterial()来设置立方体的颜色。

+0

您可能还会看看NeHe OpenGL课程:http://nehe.gamedev.net/lesson.asp?index=01 - 您可以使用许多语言的基本代码。 – schnaader 2009-10-24 04:05:40

+0

你可以添加一些参数给glMaterial的例子吗?看glMaterial的超链接,它似乎是在谈论光泽度;这对我来说并不明显,这与颜色有关。 我的确在使用GL_LIGHTING,因为我发现在关闭照明的情况下,无法区分我的形状的边缘。 – Dennis 2009-10-24 05:43:01