GLSurfaceView作为纹理

时间:2014-09-22 06:19:37

标签: android opengl-es-2.0 glsurfaceview

我一直在尝试将OpenGL多维数据集表面上的GLSurfaceView渲染为纹理。可能吗?怎么去呢?

1 个答案:

答案 0 :(得分:1)

通常的做法是渲染到由纹理支持的帧缓冲对象(FBO),然后从中进行渲染。

您可以谷歌查看GLES2中FBO用法的示例(设置有点复杂)。在实践中展示它的一个例子是Grafika中的“记录GL应用程序”活动,它使用FBO(和其他几种方法)来记录GLES渲染。 doFrame()中的最后一个“else”子句呈现给FBO,然后将该纹理呈现两次,一次在屏幕上,一次呈现给录像机。

您可能希望从GLSurfaceView切换到普通SurfaceView以更好地控制渲染过程。 Grafika中的大多数代码都使用SurfaceView或TextureView。