`
kkkloveyou
  • 浏览: 26289 次
文章分类
社区版块
存档分类
最新评论

Flash游戏开发性能优化

 
阅读更多
(1)数据存储方式的选择
使用如下几种存取数据方式进行存取100万次运算,所花时间依次为(单位为毫秒,ms):如下几种存取数据方式100万次存取运算效率依次为:  类定义中的属性(如public、private类属性) 135 毫秒
1. Point类对象 140毫秒
2. Rectangle类对象(x等属性) 140ms
3. Array类对象 270ms
4. Object类对象 500 ms
5. 动态类动态属性 550ms
6. Rectangle类对象(left等属性) 700ms
7. 自定义类getter/setter 1000ms
8. 自定义类Function 1000ms
最快的是第一类,速度是Array的两倍,Object的四倍,getter/setter的约八倍。存取坐标要用Point和Rectangle,比Array快的多。 Object和动态类效率较低,一般情况下请尽量使用密封类。
(2)场景中的MovieClip或Sprite在清除之前一定要用removeEventListener把上面所有的事件清除掉,这样系统才会gc掉。
(3)使用cacheAsBitmap进行位图缓存,对图形颜色多,元素多的加快CPU的处理速度。
(4)位图在运算速度上很快,但是在尺寸上变得很大,而矢量图虽然尺寸很小,但是在图形渲染上很占CPU资源,所以要选择尽量色差小,颜色简单的图形用矢量来做。大量复杂的图形可用位图代替。
(5)资源的压缩,矢量图中线段数量也决定了图形渲染的快慢。可以采用flash软件自带的修改->形状->优化,减少图形中的线条的数量。
(6)尽量采用低级运算和内部方法
用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()更快。用乘-1来代替Math.abs()方法。比如var nn:Number = -23;var test:Number= nn < 0 ? nn * -1 : nn;要比var nn:Number = -23;var test:Number = Math.abs(nn);快。当然还有更多的优化计算的方法。一般来说,低级运算要比高级运算速度;内部方法比调用其他方法速度快。
(7)在各种重要的代码优化手段中,有这么一条:在定义局部变量的时候,一定要用关键字var来定义,因为在Flash播放器中,局部变量的运行速度更快,而且在他们的作用域外是不占用系统资源的。
(8)在编写游戏时尽量不要把帧频设得太高,太高的帧频会导致CPU计算量加大。
(9)我们常用的关键字:for in 可以代替其它的循环语句。
(10)不要过多使用 Object 类型。数据类型注释应力求精确,这样可以提高性能。只有在没有适当的备选数据类型时,才使用 Object 类型。同时也便于代码管理,时刻知道对象的类型和作用。同时也有利于编译器编译时优化 (11)对于类型是MovieClip等需要绘图的对像,能重复用的就重复用,比如删除一个对像后如果重新使用它,先判断if(mc == null)存不存在,存在就不再给它赋一个新的对像了。
(12):善用对像池功能,在制作大型游戏时,往往会用到很多一模一样的影片剪辑,把从场景中删除的对像放入对像池中,当需要用到对像时,可以从池中直接创建新的对像来保证内存的占用。
(13)Lib注册机制,在制作大型的游戏时,往往是多人分工,一个游戏维护起来也相当复杂,这时可以采用Lib文件的注册方式添加游戏的事件管理。统一由一个时间片,或一个侦听池管理。减少了游戏运行时的负担,也起到了多人维护的作用。
(14)使 ActionScript 尽量简单。
限制使用的循环数和每个循环包含的代码数。
关闭trace。运行期间不断打印会影响速度。
在AS中尽量不用或少用除法运算符。如果可能的话,用乘法代替除法,比如:
var b = a / 4;用下面的乘法运算来替代:var b = a * 0.25;
尽量避免字符串和数组处理过长的数据,因为这会非常消耗 CPU。
分享到:
评论

相关推荐

    Flash开发性能优化宝典

    优化 ADOBE® FLASH® 平台的性能

    flash代码性能优化

    关于flash性能优化的ppt,希望能够对flash开发和测试人员有帮助

    优化Adobe Flash平台的性能

    随着 Adobe® Flash® Player 10.1 的发布,开发人员可以在移动设备和桌面上使用相同的 Flash Player。本文档通过代码示例 和使用案例,为开发人员概括介绍了在移动设备上部署应用程序的最佳做法。主题包括: • ...

    flash开发和优化规范

    flash开发性能是很关键的一点 这个文档就是针对这个性能方面的全面分析

    优化ADOBE_FLASH_平台的性能

    随着 Adobe® Flash® Player 10.1 的发布,开发人员可以在移动设备和桌面上使用相同的 Flash Player。本文档通过代码示例 和使用案例,为开发人员概括介绍了在移动设备上部署应用程序的最佳做法。主题包括: • ...

    Flash移动开发高级教程-创建Android&iPhone应用

    本书介绍了使用Flash CS5和Flash Builder for Android and iOS应用开发所有类型的移动应用程序。...最后,因为移动设备的处理能力远远低于桌面设备,所以还将学习如何优化应用程序以提供用户所需要的性能水平。

    针对移动平台的Flash游戏移植与优化

    flash/air 在移动开发时 内存 渲染等都会影响性能 文档图文并茂的介绍了影响性能的各个方面 通俗易懂 适合入门

    flashbuilder手机开发ios android

    包括flashbuilder 4官方教程(中文) flex 4.5手机应用开发 flex4组件开发 flex 代码规范 flex教程 flex中的css样式 flex开发手机程序 flex4界面设计实战 flex4开发ria应用程序 flash内存性能优化

    F-CMS Flash整站系统[Flash CMS] v2.0

    F-CMS Flash网站管理系统[Flash CMS]是由伊缘网络工作室开发的一套全智能Flash网站内容管理系统。是目前国内第一套拥有会员系统、商城系统、可自助安装Flash网站模板的Flash网站管理系统[Flash CMS]。 可用于各种...

    Cocos2d-JS开发之旅+完整版

    第10 章 走向高大上的必经之路——简单的性能优化 / 160 第11 章 让主角不再死板 / 173 第12 章 动态的背景 / 188 第13 章 界面的文字有点丑 / 204 第14 章 超炫的效果——粒子系统 / 211 第15 章 尝试做一个更...

    高性能网站建设指南.part1.rar

    重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和图片处理等要素的技术,全面涵盖浏览器端性能问题的方方面面。在《高性能网站建设指南》中,作者给出了14条具体的优化原则,每一条原则都配以范例...

    《高性能网站建设指南》

    重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和图片处理等要素的技术,全面涵盖浏览器端性能问题的方方面面。在《高性能网站建设指南》中,作者给出了14条具体的优化原则,每一条原则都配以范例...

    【Egret Engine v5.4.0】HTML5开源免费游戏框架+极强的跨平台运行能力

    Egret框架内的JavaScript类库,具备卓越的游戏渲染性能,相对于其他HTML5游戏框架,Egret深度优化了显示对象列表处理机制,提供 了强大的位图CacheBuffer处理功能。在未来的正式版本中,Egret还将加入所有的渲染内容...

    优化器:用于加速器的OCELOT通用优化器

    Ocelot优化器简介Ocelot优化器是一个用于自动优化加速器性能的平台。 这是一个开源项目,由 , , 物理学家开发。用例优化器用于许多不同类型的优化。 FEL设施: 通过以下方式最大化FEL脉冲能量: 移相器(EuXFEL) ...

    高性能网站建设指南2 中文版 高性能网站建设指南(中文版)

     《高性能网站建设指南》一书介绍了如何针对网站中的Ajax、CSS、JavaScript、Flash和图片进行性能优化。每个性能规则都提供了示例,在本书的配套网站上可以找到代码片段。这些规则包括:  •减少HTTP请求 •使用...

    高性能网站建设指南(pdf).part2

    重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和图片处理等要素的技术,全面涵盖浏览器端性能问题的方方面面。在本书中,作者给出了14条具体的优化原则,每一条原则都配以范例佐证,并提供了在线...

    Flex企业应用开发实战.rar

    最后重点探讨Flex应用性能优化等方面的高级知识。值得一提的是,本书公开了作者努力开发出来的、经实际项目检验过的Flex企业应用框架的源代码,具有非常高的参考价值。 本书对Flex的基础知识着墨不多,所有内容都...

    高性能网站建设指南

    重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和图片处理等要素的技术,全面涵盖浏览器端性能问题的方方面面。在《高性能网站建设指南》中,作者给出了14条具体的优化原则,每一条原则都配以范例...

    构建高性能web站点 精选版

    重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和图片处理等要素的技术,全面涵盖浏览器端性能问题的方方面面。在《高性能网站建设指南》中,作者给出了14条具体的优化原则,每一条原则都配以范例...

Global site tag (gtag.js) - Google Analytics