java - Android - 如何正确挂起 OpenGL

标签 java android optimization opengl-es

我在暂停我的应用程序时遇到了一些问题。我为游戏逻辑使用单独的线程。所以我暂停了我的线程,但我不知道如何正确暂停和重新创建 OpenGL View 。这是我的代码。它有效,但我认为可能存在内存泄漏。显示是 GLSurfaceView,渲染器是 GLSurfaceView.Renderer。

@Override
public void onPause()
{
    super.onPause();
    display = null;
    game.pause();
    Game.texturesLoaded = false;
}

@Override
public void onResume()
{
    // TODO normal pause
    super.onResume();
    display = new Display(this);
    display.setRenderer(renderer);
    setContentView(display);
    game.resume();
}

最佳答案

重新创建任何与 OpenGL 相关的东西应该通过 onSurfaceCreated() 完成.

关于java - Android - 如何正确挂起 OpenGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9341705/

相关文章:

java - 是否可以使用正则表达式获取前 n 个字符但仅以整个单词结尾?

java - 如何使用drawImage()来裁剪图像?

Android:PreferenceFragment 只显示第一偏好

vba - Excel VBA 优化循环

java - 读取顶点并创建边

java - 将 line.separator 传递给 Maven

javascript - Cordova/Phonegapp - 如何使用本地存储插件

android - ArrayList 或 SQLite

c# - 如何从 C# 调用 CPU 指令?

optimization - 覆盖一个分区的加权二分匹配