我一直在按照本指南在 OpenGL 中显示位图
但是,我有一个要一个一个显示的位图队列。
我是否应该每次都创建一个新的纹理onDrawFrame
作为Bitmap
队列的头部,例如onDrawFrame
:
Bitmap bitmap = ...
// generate one texture pointer
gl.glGenTextures(1, textures, 0);
// ...and bind it to our array
gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
// create nearest filtered texture
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR);
// Use Android GLUtils to specify a two-dimensional texture image from our bitmap
GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bitmap, 0);
// Clean up
bitmap.recycle();
或者我可以以某种方式只做这些操作的一部分,onSurfaceChanged
可能会转移一些其他操作吗?