颜色覆盖opengl es中的纹理映射

时间:2013-08-18 17:09:36

标签: android opengl-es

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

1 个答案:

答案 0 :(得分:1)

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

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

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

glEnable(GL_TEXTURE_2D)
drawTextureObject();