我正在将OpenGL应用程序从iPhone移植到Android,我需要
将OpenGL内容渲染为纹理。由于帧缓冲区不是
在OpenGL 1.0中可用,DROID是唯一具有帧缓冲OpenGL扩展的Android手机,我正在尝试使用OpenGL和
然后使用glCopyTexImage2D将结果复制到纹理中。然而,
我最初的发现不好:
glCopyTexImage2D可在Android模拟器(操作系统v。1.5)中使用,但
仅适用于GL10.GL_RGB,不适用于GL_RGBA。如果您尝试复制Alpha数据
从场景到纹理,您将获得完全白色
质地。
glCopyTexImage2D似乎在Android G1上根本不起作用。
glCopyTexImage2D不会引发UnsupportedOperationException,
但称它为纯白色之后。
有没有人在Android应用程序中成功使用过glCopyTexImage2D?如果
因此,能否请您发布一些您正在使用的代码以及您的应用程序限于哪些设备?我怀疑它仅适用于特定设备上的特定参数。现在,我这样称呼它:
gl.glCopyTexImage2D(GL10.GL_TEXTURE_2D, 0, GL11.GL_RGBA, 0,0, 256,
256, 0);
最佳答案
根据文档,仅当GL版本为1.1或更高版本时,glCopyTexImage2D才可用。这意味着在Android中无法保证。