Android OpenGl:什么时候开始调用API函数?

时间:2013-06-28 09:57:48

标签: android api opengl-es

我注意到如果我在创建表面之前尝试调用API调用,例如

GLES20.glGenTextures(textures.size(),textureHandle,0); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D,textureHandle [i]);

它们的行为不正常,例如纹理处理程序始终返回为0。

所以我把我的启动方法放在onSurfaceCreated调用下。

public void onSurfaceCreated(GL10 arg0, EGLConfig arg1) {
    if(initiated)return;
    BitmapLoader.onOpenglGLInitiated();
    program.init();
    initiated = true;

}

然而,无论何时重建表面,都会被召回;当用户暂停并恢复时。 其中reuslts在双重启动,因此是一个错误。 我想知道确切地说应该在哪里放置我的启动代码。

1 个答案:

答案 0 :(得分:1)

到目前为止,我已经看到了,在onSurfaceCreated

中加载纹理非常方便

Example 6: Texture (Nehe Lesson 6: Texture)

你到底犯了哪些错误?