【发布时间】:2011-08-27 08:34:07
【问题描述】:
我有一个ByteArray 并想使用 OpenGL 创建一个位图。在 Android 中,有一个 decodeByteArray() 方法,它返回一个可以在 ImageView 上绘制的 Bitmap 对象。
OpenGL 中可用的等效方法是什么?
【问题讨论】:
标签: android opengl-es bitmap android-imageview
我有一个ByteArray 并想使用 OpenGL 创建一个位图。在 Android 中,有一个 decodeByteArray() 方法,它返回一个可以在 ImageView 上绘制的 Bitmap 对象。
OpenGL 中可用的等效方法是什么?
【问题讨论】:
标签: android opengl-es bitmap android-imageview
OpenGL (ES) 中没有等效函数,因为它是一个纯 API,不是为解码字节数组而设计的。 但是,如果您想在模型上应用一些纹理,您可以使用如下方法:
gl.glGenTextures(1, textures, 0);
gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
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);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S,GL10.GL_REPEAT);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T,GL10.GL_REPEAT);
GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, texture, 0);
texture.recycle();
【讨论】: