【发布时间】:2011-06-29 16:42:49
【问题描述】:
我想在我的应用程序的后台运行一个 Android OpenGL-ES 界面来为应用程序提供动态图形资源(位图等)。 OpenGL GLSurfaceView 不是我的应用程序的可见屏幕;它仅用作渲染工厂来制造供主要活动使用的图形。
有谁知道如何让 Android GLSurfaceView 在它不是活动视图时运行? Google Android 文档清楚地表明,当 GLSurfaceView 失去其作为主视图的状态时,表面及其所有资源都会被销毁。
当 GLSurfaceView 及其关联的 GLSurfaceView.Renderer 不是(并且永远不会是)应用程序的主视图时,有什么方法可以保持其正常运行?
【问题讨论】:
-
我认为您可以使用 RenderBuffer 对象,将其附加到 FBO 并绘制到它。
-
或(为我工作),将其视图大小设置为 1pixel&1pixel,使其可见(用户看不到它)并在 OnDraw 中将 FBO 绑定到主纹理并渲染它