关于网友提出的“android opengl 纹理贴图问题”问题疑问,本网通过在网上对“android opengl 纹理贴图问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:android opengl 纹理贴图问题
描述: 最近在做一个麻将游戏,背景已经能正常显示,尝试将麻将牌贴到背景上面去,但发现贴上去的图和原图不对应,
这是原图,模拟器上的图片如下 ![android opengl 纹理贴图问题]()
相应的绘图代码:
public void draw(GL10 gl) {
//绘制背景
gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glEnableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
gl.glVertexPointer(2, GL10.GL_FLOAT, 0, vertexBuffer);
gl.glTexCoordPointer(2, GL10.GL_FLOAT, 0, textureBuffer);
gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP,0,4);
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
gl.glDisableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
gl.glTranslatef(0.1f, 0.1f, 0f);
//绘制麻将牌
gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[1]);
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glEnableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
gl.glVertexPointer(2, GL10.GL_FLOAT, 0, MahjongBuffer);
gl.glTexCoordPointer(2, GL10.GL_FLOAT, 0, textureBuffer);
gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP,0,4);
// gl.glRotatef(90f, 0.0f, 1.0f, 0.0f); //尝试过旋转,但没用
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
gl.glDisableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
}
刚接触opengl,是新手,望各位高手多多指点,这个问题该如何解决?
解决方案1: 现将图片上传到csdn个人空间相册 再链接
以上介绍了“android opengl 纹理贴图问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/835370.html