我基于月球着陆器的例子制作了我的游戏,自从开始制作以来就一直存在卡顿问题。我尝试过的所有方法都没有解决这个问题,所以我花了几个小时创建了一个简化版的月球着陆器示例,并放置了一个简单的滚动图片来展示卡顿情况。注意:这与垃圾回收器无关。如果你认为是这个原因,请查看日志,垃圾回收器运行的次数远不及卡顿出现的频率。
在我的手机上(摩托罗拉Milestone,2.2),屏幕上滚动的图片每秒会卡顿大约1/10秒。这种卡顿并不能完全破坏游戏体验,但它非常令人分心和沮丧。我的游戏还涉及大量快速滚动和快速移动,因此通常更容易察觉到卡顿。
如果你们中有人有时间,能否快速查看这个Eclipse项目并看看:
1. 在你的手机上是否会卡顿(仔细观察滚动时,每半秒到一秒半就会有一个小卡顿); 2. 是否可以找到任何解决卡顿的方法。
我希望只是我的某行代码导致了整个问题,而我却没有意识到。我只是不敢相信,即使剥离了这么多内容,它仍然与我的完整游戏中的1000个对象具有完全相同数量的卡顿,特别是因为它在我的手机上以稳定的60fps运行。
编辑:已在Traceview上对我的游戏进行了分析,看起来没问题。
源代码下载链接:http://dl.dropbox.com/u/4972001/LunarLander.rar
在我的手机上(摩托罗拉Milestone,2.2),屏幕上滚动的图片每秒会卡顿大约1/10秒。这种卡顿并不能完全破坏游戏体验,但它非常令人分心和沮丧。我的游戏还涉及大量快速滚动和快速移动,因此通常更容易察觉到卡顿。
如果你们中有人有时间,能否快速查看这个Eclipse项目并看看:
1. 在你的手机上是否会卡顿(仔细观察滚动时,每半秒到一秒半就会有一个小卡顿); 2. 是否可以找到任何解决卡顿的方法。
我希望只是我的某行代码导致了整个问题,而我却没有意识到。我只是不敢相信,即使剥离了这么多内容,它仍然与我的完整游戏中的1000个对象具有完全相同数量的卡顿,特别是因为它在我的手机上以稳定的60fps运行。
编辑:已在Traceview上对我的游戏进行了分析,看起来没问题。
源代码下载链接:http://dl.dropbox.com/u/4972001/LunarLander.rar