如何重新启动GLSurfaceView的渲染线程(或者做什么)?

时间:2012-12-03 14:40:45

标签: android multithreading opengl-es glsurfaceview

我正在尝试制作经典手机游戏范例的方法:水平选择器,然后是游戏屏幕。 我完全理解有很多方法可以做到这一点,但我想知道当我尝试这个特定的(出于学习目的)时出了什么问题:

  1. 我有一个活动,它包含对我自己的GLSurfaceView子项的引用。在活动开始时,它会加载默认的“级别”并完美地播放它。我可以看到Render线程已经开始。

  2. 我实现了一个OptionsMenu项,激活后用适当的适配器给GridView充气,允许用户选择一个级别;并使用setContentView将此膨胀的布局设置为Activity。这是GLThread死的时候。

  3. 现在我也实现了该菜单的OnClick,以便在点击后加载游戏引擎中的一个级别(工作正常,顺便说一句)并使用setContentView和保存的(在1.)引用中返回GLSurfaceView。 / p>

  4. 这就是我得到一个空白屏幕的方式。一切正常,菜单仍然有效,我可以回到关卡选择器,但在调试器中我可以看到渲染线程不存在。

  5. 拜托,有人可以向我解释究竟出现了什么问题?我完全不确定这个OpenGL内在。

0 个答案:

没有答案