我需要使用freetype字库动态在一张1024*1024上把出现的新字的图片数据放到纹理的某块区域,大部分情况下是没有问题的,但是游戏运行中会突然报错GL_INVALID_ENUM,不知道原因何在,使用的渲染引擎是opengl1.x,看了下cocos2dx的代码,差别应该不大,都是先绑定纹理再调用gltexsubimage2d去更新纹理,求高手解答。
代码如下
glBindTexture(GL_TEXTURE_2D, texture->m_textureName);
glTexSubImage2D(GL_TEXTURE_2D, 0, (GLint)texHx, (GLint)texHy, (GLsizei)texw, (GLsizei)texh, texture->PixelFormat, texture->PixelType, m_imageData);