在不同的GLSurfaceViews之间共享GLES20上下文和纹理?
|
是否可以在一个活动中的不同GLSurfaceView之间共享GLES20上下文?或者,如何在不同的GLSurfaceViews之间共享一组纹理?
在iOS上,如果要节省内存并在不同的CAEAGLLayer支持的UIView中重用(大)纹理,可以在它们之间传递EAGLContext对象,也可以使用共享公用EAGLSharegroup对象的不同EAGLContext。
我想知道如何在Android上完成此操作。有什么等效的技术吗?
编辑1
最初的建议是实现自己的EGLContextFactory,该方法将返回相同的EGLContext,因为每个GLSurfaceViews都将渲染分派到其自己的私有gl渲染线程,并且不可能在不同线程之间共享相同的EGLContext,所以该建议不起作用。
重述我最初的问题:
一个屏幕上有多个GLSurfaceViews(一个Activity),并且需要在每个表面的单独EGLContext中访问一组通用但较大的纹理,但是多次加载纹理会超出设备的内存。那么,您如何在GLSurfaceViews之间共享纹理?
没有找到相关结果
已邀请:
2 个回复
辅奈
凡夕