日期:2013-12-18  浏览次数:20958 次

  位图缓冲(Bitmap Caching)

  一个Flash动画是如何播放的?其实播放,就是Flash Player把源文件内能看到的一帧一帧的画面绘制出来,当然绘制前需求处理每一帧内的代码

  Flash播放快慢由什么决定

  一个Flash显示的快慢,首先是通过制造者设置的FPS决定的,但是由于机器配置和操作系统的不同,可能设置过高的FPS在有些低配置机器上就达不到,而实际上,所有设置的FPS其实就是Flash能播放到的最大帧频.在同样的环境下,画面的复杂度就决定了绘制的快慢.

  位图缓冲的意义

  由于Flash大部分是矢量计算,所以当绘制很复杂的画面,或者频繁复制某些画面的时候,就势必要使用大量时间,而这些时间其实应该可以省略的.位图缓冲的设计就是针对与此,他可以把一个mc,首先绘制一遍,把相关信息放到事后预备好的安装内,当这个mc在没有外形改变的情况下反复使用时,Flash Player就不会每次再去重新绘制那个mc,而是从安装内读取相关信息并显示,这样就大大提高了速度
位图缓冲的用途

  设想一下,在一个满是由窗口组件搭出来的使用程序中,每个窗口都是可以拖来拖去的,这个时候如果没有设置位图缓冲,那么可想而知,Flash Player在每进入一帧的时候,都要对该画面上所有窗口组件,进行一次绘制,这是很恐怖的!

  位图缓冲的留意点

  协助里面也说过了,对于极少使用旋转,缩放,变型的mc使用位图缓冲会大大提高速度,这也是由于,如果进行了以上操作,就破坏了mc的外形,Flash Player不得不重新去重新"认识"一下mc,这样形成的结果,可能反而比没有设置位图缓冲更糟

  位图缓冲的用法

  在Flash IDE中 选中一个MC,Ctrl+F3(属性面板),钩选位图缓冲(cacheAsBitmap)即可AS的话 mc.cacheAsBitmap = true即可两个是有联系的,当在IDE里面曾经钩选了cacheAsBitmap,那么程序中mc.cacheAsBitmap就曾经是true了,反之亦然

  动画理解:http://weblogs.macromedia.com/md/archives/2005/10/flash_8_animati_3.cfm
  位图缓冲的使用实例:http://www.flashguru.co.uk/maelstrom/?example=isometric%20grid%20image
  参考文章:http://mxdj.sys-con.com/read/142694.htm