【发布时间】:2011-12-13 14:27:45
【问题描述】:
我知道这是我在从软件绘图切换到 opengl es 1.0 之前应该学习的东西,但是我一直无法找到有关该主题的任何信息...
如果有一段时间没有触摸任何东西,我的opengl应用程序在进入睡眠状态后崩溃......我想知道是不是因为我没有在它进入睡眠状态之前卸载纹理或顶点/颜色/纹理/索引缓冲区...... .我真的不确定如何做到这一点,或者即使它会有所帮助......有人可以指导我或告诉我必须重新加载,销毁等规则的快速指南吗?我真的被这一切弄糊涂了……
我不知道它是否有帮助,但我的主类扩展了 GLSurfaceView 并实现了“渲染器”,它加载了 onScreenCreated 中的所有纹理和缓冲区对象,并修复了 onSurfaceChanged 上的屏幕缩放。在主活动中(主类链接的地方)覆盖 onResume 和 onPause 调用 onResume 和 onPause openGL表面命令...
任何可能出现问题的线索都会非常有帮助...我的游戏引擎已经完成了一半的编码,但我担心像这样的故障只会停止我当前和未来的项目。
我正在使用 Froyo (android 2.2) 和 openGL ES 1.0。
从 logcat 打印出错误:
10-24 03:13:41.988:错误/AndroidRuntime(9888):致命异常:GLThread 26
10-24 03:13:41.988: 错误/AndroidRuntime(9888): java.lang.IllegalThreadStateException: 线程已经启动。
10-24 03:13:41.988: 错误/AndroidRuntime(9888): at java.lang.Thread.start(Thread.java:1322)
10-24 03:13:41.988: 错误/AndroidRuntime(9888): at or.gl.m5.Screen.onSurfaceCreated(Screen.java:161)
10-24 03:13:41.988: 错误/AndroidRuntime(9888): 在 android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1317)
10-24 03:13:41.988: 错误/AndroidRuntime(9888): 在 android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)
【问题讨论】:
标签: android opengl-es android-2.2-froyo