单线程OpenGL ES Android应用程序

时间:2011-08-25 07:22:38

标签: android

我正在尝试为Android创建单线程OpenGL应用程序,例如this示例。

但是当我在activity类中添加了onTouchEvent,onKeyDown和onKeyUp方法时,应用程序开始工作得很慢。

此外,我尝试将sleep(20)添加到onDraw方法中,但它没有帮助。

请告诉我,我应该如何组织单线程OpenGL应用程序?

1 个答案:

答案 0 :(得分:1)

您会发现,当您收听触摸事件时,每次触摸会有多个事件,您将很快得到它们。这些事件中的每一个都将停止任何渲染并调用您的侦听器代码,这将使您的渲染显得缓慢。

你已经达到了在这里使用单线程渲染器的限制,下一步将是使用另一个线程进行渲染。

现在,不要在onDraw方法中睡觉,而是尝试在事件处理程序中休眠。

阅读this questionlinked post by Dianne Hackbourn