1

我正在使用带有android的opengl es。我在屏幕上有三个对象,其中两个我没有使用纹理贴图,只是颜色,还有一个我是。当我注释掉绘制两个颜色对象的代码时,纹理可以很好地映射到我的另一个对象上,但是当两个颜色对象存在时,纹理不会映射到我的对象上,我只是得到一个白色方块。绘制颜色对象后是否需要调用 opengl,以便纹理将呈现在另一个对象上?

4

1 回答 1

1

在您绘制两个颜色对象之前,我猜您正在调用glDisable(GL_TEXTURE_2D),如果是这样,您需要glEnable(GL_TEXTURE_2D)在使用纹理绘制对象之前调用。

所以你的代码应该是这样的:

glDisable(GL_TEXTURE_2D)
drawColorObject1();
drawColorObject1();

glEnable(GL_TEXTURE_2D)
drawTextureObject();
于 2013-08-18T17:27:20.717 回答