Flash As3.0 游戏开发小结
转自: http://blog.csdn.net/chongtianfeiyu/article/details/8096446 ActionScript3.0(以下简称AS3.0)开发flash游戏目前已经成为主流使用的flash脚本语言。 AS3.0是面向对像的脚本语言,它由JAVA衍生出来,所以它拥有JAVA的编写特点。 它比AS2.0的运算速度提高近十倍,但是局限还是有的,所以在开发AS3.0的游戏有许多需要开发者注意的地方: 3. XML的支持 例2:清除容器中的所有物件可以用 例3:场景中的MovieClip或Sprite在清除之前一定要用removeEventListener把上面所有的事件清除掉,这样系统才会gc掉。 例4:请使用cacheAsBitmap进行位图缓存,对图形颜色多,元素多的加快CPU的处理速度。 例5:位图在运算速度上很快,但是在尺寸上变得很大,而矢量图虽然尺寸很小,但是在图形渲染上很占CPU资源,所以要选择尽量色差小,颜色简单的图形用矢量来做。大量复杂的图形可用位图代替。 例6:资源的压缩,矢量图中线段数量也决定了图形渲染的快慢。可以采用flash软件自带的修改->形状->优化,减少图形中的线条的数量。 例7:?用unit()或int()代替取整运算Math.floor()和Math.ceil()。比如var test:uint = uint(1.5);要比var test:Number = Math.floor(1.5);快;而var test:uint = uint(1.5)+1;要比var test:Number = Math.ceil(1.5);也快。如果是Math.floor(),还可以用位运算(>>0)来代替。比如var test:uint =1.5>>0,比unit()或int()更快。 例8:?在各种重要的代码优化手段中,有这么一条:在定义局部变量的时候,一定要用关键字var来定义,因为在Flash播放器中,局部变量的运行速度更快,而且在他们的作用域外是不占用系统资源的。 例9:在编写游戏时尽量不要把帧频设得太高,太高的帧频会导致CPU计算量加大。 例10:我们常用的关键字:for in 可以代替其它的循环语句。(这点值得商榷) 例11:不要过多使用 Object 类型。数据类型注释应力求精确,这样可以提高性能。只有在没有适当的备选数据类型时,才使用 Object 类型。同时也便于代码管理,时刻知道对象的类型和作用。同时也有利于编译器编译时优化 例12:对于类型是MovieClip等需要绘图的对像,能重复用的就重复用,比如删除一个对像后如果重新使用它,先判断if(mc == null)存不存在,存在就不再给它赋一个新的对像了。(AS3.0尽量用Shape类) 例13:善用对像池功能,在制作大型游戏时,往往会用到很多一模一样的影片剪辑,把从场景中删除的对像放入对像池中,当需要用到对像时,可以从池中直接创建新的对像来保证内存的占用。 例14:Lib注册机制,在制作大型的游戏时,往往是多人分工,一个游戏维护起来也相当复杂,这时可以采用Lib文件的注册方式添加游戏的事件管理。统一由一个时间片,或一个侦听池管理。减少了游戏运行时的负担,也起到了多人维护的作用。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- cocos2d-x 3.0 Beta 中创建项目并编译-Ubuntu12.10
- java – 用于读/写pbxproj/xcodeproj文件的库?
- NoSQL数据库Redis系统性介绍
- ios – 简单的Xcode Hello World显示控件然后它们立即消失
- XML和JSON两种数据交换格式的比较
- 一张图看懂git文件存储原理
- wp7 webbrowser 添加依赖属性content
- Cordova应用程序无法使用Xcode 7.3存档(未找到Cordova / CD
- C语言中getopt()函数和select()函数的使用方法
- objective-c – 添加UITapGestureRecognizer后UIButtons不起