FLASH AS3优化.doc

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FLASH AS3优化

教程细节: 难度:中等 平台:Flash(Flash Player 10.1) 语言:AS3 使用软件:Flash Professional CS4 预计完成时间:30分钟 下载源文件 代码优化的目的是最大限度地提升你的Flash资源的性能,同时尽可能使用最少的系统资源-RAM和CPU。在本教程中,我们从一个可以运行但是耗费很多资源的Flash应用程序开始,然后逐渐地在我们的源代码中应用一些优化方法,最后得到一个更快,更简洁的SWF文件。 最终结果预览: 先看看我们要得到的最后的结果: 注意“MemoryUsed(内存使用)”以及“CPU Load(CPU 负荷)”这两个状态是基于你已经打开的浏览器窗口中的所有SWF文件,包括Flash广告以及相类似的一些东西。这个SWF文件与真实的它相比,这里就可能显得要消耗更多的资源。 第1步:理解这个Flash影片 这个Flash 影片有两个主要元素:一个是对火焰的例子模拟,另外一个是一张图,这张图显示的是这个动画随着时间变化的资源消耗情况。这张图的粉红色的线条是以兆字节为单位来跟踪这个影片的所有内存消耗,而绿色线条是以百分比的形式绘制出CPU的负荷情况。 ActionScript对象占用了系统分配给Flash Player的大部分内存,并且一个影片中包含的ActionScript对象越多,影片消耗的内存也就越多。为了让一个程序的内存消耗保存在低水平,Flash Player 一般会通过清理一些ActionScript 对象同时释放掉那些不再使用的内存来进行垃圾回收。 内存消耗图一般显示的是像一座小山一样的由上而下的这样一种图形,而后在每次执行垃圾回收之后,这个图像就变得倾斜,然后又随着新对象的创建慢慢上升。只上升的线条表明垃圾回收出现了问题,这意味着新的对象被添加到内存中,而没有其它的对象被删除。如果继续这样的一个趋势的话,Flash Player 可能最终因为耗尽了所有的内存而崩溃。 CPU负荷是通过跟踪影片的帧速来进行计算的。一个Flash 影片的帧速就有点类似于它的心跳。每一帧,Flash Player更新并且渲染屏幕上的所有元素,同时运行所有的要完成的ActionScript 任务。 帧速决定了Flash Player 在每一帧上该花多长的时间,所以10帧每秒(10fps)的帧速意味着至少每帧100毫秒。如果所有所需的任务在这样的一个时间段内完成了,那么Flash Player会一直等到本帧的剩余时间结束,才会开始下一帧。另一方面,如果以某一特定的帧速,所有所需的任务需要很高的CPU消耗以致于不能在相应的时间段内完成,那么帧速会自动减缓来获取一些额外的时间。一旦负荷减轻了,帧速又会自动加上去,返回到原来的设定值。 (在程序父窗口失去焦点或者移动到屏幕边界外面的情况下,Flash Player会自动地将帧速减小到4fps。这样做是确保无论用户的焦点在哪里,都能保护系统资源。) 所有的这些意味着实际上存在两种帧速:一种是你最初设置的并且希望你的影片总是以这个速度运行,另外一种是它实际的运行帧速。我们将称你自己设置的这个帧速叫做目标帧速,而它实际运行的速度称作实际帧速。 图中的CPU负荷是通过实际帧速和目标帧速的比值来进行计算的。使用到的公式如下: CPU load=(目标帧速– 实际帧速 )/ 实际帧速 *100; 例如,如果目标帧速被设为50fps,但是影片实际的帧速为25fps,CPU 负荷将会是50%,计算方法是(50-25)/50*100. 请注意这并不是运行这个影片所要使用的系统CPU 资源的实际百分比,而是对真实值的一个初略的估计。对于这里描述的优化过程,这个估计对与手边的任务而言已经是一个很好的度量。为了可以获取到CPU 的实际使用率,可以使用你的操作系统提供的工具。例如,Windows中的任务管理器,现在看看我的任务管理器,它显示没有优化的影片正使用53%的CPU资源,而影片的图形上却显示CPU负荷为41.7%。 请注意:本教程中的所有影片截图都是来自我个人电脑上的Flash Player版本。这张图上的数字很可能在你的系统上显示的就不一样了,这主要依据你的操作系统,浏览器以及Flash Player版本。如果你已经在不同的浏览器窗口中或者Flash player中打开了其它的Flash 应用程序,那么在某些系统上它也可能影响到内存的使用大小。当分析你的程序的性能时,一定要确保没有其它的Flash 程序正在运行,因为它们可能影响到你的度量。 对于CPU 负荷而言,影片无论什么时候移动到了屏幕的边界之外,它的值就会飙升到90%。例如,如果你切换到另外一个浏览器或者将这一页往

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档