1

我正在制作的 JOGL 中的 OpenGL 中的简单 2D 游戏存在一些问题。我在这个游戏中映射了一些纹理。当我想用某种颜色(无纹理)渲染一些图形对象(fe Guads)时,我使用 procedure glColor3d(x,x,x)。对象得到这种颜色,但所有其他纹理都用这种颜色着色。我只想为一个图形对象设置颜色,但此过程为所有渲染的对象设置颜色阴影。我该如何解决这个问题?

4

1 回答 1

2

正如您已经注意到的那样,glColor3*还会更改纹理的颜色。有两种方法可以解决您的问题:

  1. glColor3d(1.0, 1.0, 1.0);在渲染纹理对象之前调用
  2. 使用glPushAttrib()/ glPopAttrib()pair 来存储图纸属性。

无论如何,以上所有功能都已被弃用 - 您可能想查看有关新 OpenGL 的教程。

于 2012-06-13T10:49:28.073 回答