原文:http://www.frozax.com/blog/2012/05/optimizing-graphics-performance-ios-android-cocos2dx/

在开发Don't Feed the Trolls的期间主要的测试设备是一台Acer平板A500. 这款平板非常强劲,我用它测试的时候没有发生任何故障

当然,我也在许多android设备和IOS设备上测试过。当我在HTC Desire上面测试的时候发现了一个很大的性能问题。

在这篇文章中,我将解释引起游戏性能低的原因和我是怎么样修复的。我会给你一些方法去找出什么地方会出现一些潜在的问题。

问题一:

在游戏当中,当接近关卡结束的时候游戏变得越来越慢

当然,在关卡结束的时候会有很多熊和怪物出现,所以问题可能出在这儿。但是,在同一时间没有多个3到4个角色出现。

为了避免在玩游戏期间申请分配内存,我在每关开始的时候预分配了所有要出现的角色的内存,所以排除是由内存引起的故障。

最后我发现问题是由角色消失引起的。这些角色已经显示出来了,只是完全透明而已,我用CCFadeOut action去隐藏这些精灵。

在没CCFadeOut执行结束后,那些本来应该消失的角色还是被显示出来的 只是你看不见而已。最好的修复方法就是在执行完

CCFadeOut的时候执行CCHide就可以避免调用无用的绘制。

修复1:确保没有被设置不可见的精灵(完全透明或者低透明)。销毁或隐藏这些精灵

问题2:

游戏排行榜菜单非常慢

是由于菜单在画出屏幕后的菜单项还是存在这并没有消失,所以会拖累性能,解决方法就是当菜单的某项滑出屏幕后就隐藏掉

修复2:不要让游戏元素在滑出屏幕外还存在着,移除掉或者隐藏

问题3:

当显示排行榜的时候会变得很慢(就是很卡的意思)

主要是因为CCIBMLable的问题

posted on 2013-03-03 01:45  纯洁的坏蛋  阅读(142)  评论(0编辑  收藏  举报