Android中单独渲染线程(OpenGL ES 2.0)

我习惯主要使用Android上的Canvas SurfaceView API,最近一直在学习openGL ES 2.0

用canvas我知道,surfaceView让你能够启动一个新的线程渲染,但它并不是专门为你做的,所以我创建了一个新的线程,并在应用程序结束/暂停时管理该线程等。 …

但是,从我读过的glSurfaceView看来,这实际上是为你自动完成的? 这是否意味着我实际上不需要手动创建/启动和管理我自己的渲染线程? (我正在谈论一个渲染线程(这也可以用于逻辑更新),这是主要的UI线程分开。

澄清这个问题将不胜感激。

所有的渲染都是在一个单独的线程上完成的,并且这是自动完成的。 这个文档非常明确(引自http://developer.android.com/reference/android/opengl/GLSurfaceView.Renderer.html ):

穿线

渲染器将​​在单独的线程上调用,以便渲染性能与UI线程分离。 客户端通常需要从UI线程与渲染器进行通信,因为这是接收input事件的地方。 客户端可以使用任何标准Java技术进行交叉线程通信,也可以使用queueEvent(Runnable)方便方法。

这意味着你不必自己创建和管理渲染线程。

我希望这个澄清的事情:)