FlashPlayer版本过旧导致的渲染有关问题以及关于10.1版硬件加速的开启

FlashPlayer版本过旧导致的渲染问题以及关于10.1版硬件加速的开启
   近来用Flash CS4做项目的时候遇到了Flash Player版本导致的性能问题,目前使用的版本是2010年2月份发布的10.0.45.2。问题表现为大量的BitmapData快速轮换渲染导致的画面瞬间停顿、破碎。
   之前我们也遇到过类似的问题,无法解决,通过升级Flash Player版本后,问题消失。
   试了一下,果然将Player版本更新到Flash Professional CS5自带的10.1.53.64之后,问题消失,画面十分流畅,CPU占用也下去了。于是开始研究下是否考虑升级开发针对的版本。
   为了保证未来上线后,大多数人都能满足版本要求,于是上网查询了一下目前主流的Flash Player版本。google了一下,发现了一份比较有用的帖子。
     Flash Player Version History:http://www.flexdeveloper.eu/forums/actionscript-3-0/flash-player-version-history/
    里面介绍了各个大版本的Player 发行时间,发现10.1.53.64已经是今年6月份的版本了,这个时间不算太新,计算上开发的时间,等到产品的上线,这个版本已经算是十分旧的了。可以考虑针对这个版本进行开发。
   
    说到Player 10跟10.1,我当时在它刚发行最印象深刻的就是支持硬件加速。10版的Player需要在HTML页面中embed元素中增加wmode="gpu"属性才能开启硬件加速。而且加速的限制条件也十分的多,主要是针对H.264视频流的加速,对我们开发意义并不算大。
    但是现在的Player 10.1版中的硬件加速又得到了进一步的完善,于是又上网google了一下,找到了一遍十分有用的文章:
Flash Player 10.1 hardware acceleration for video and graphics:
http://www.adobe.com/devnet/flashplayer/articles/fplayer10_1_hardware_acceleration.html
    里面关于Hardware (GPU) graphics rendering 有一段写道:
引用
Hardware rendered objects include vector graphics, bitmaps, video, text, and filters. With hardware rendering, the GPU renders and composites graphic elements.

    这里提到了矢量图、位图、视频、文本、滤镜都可以通过GPU渲染并合成。
    经过到Adobe查证,开启硬件加速的硬件条件为支持DX9以上、PS2.0以上、显存128M以上的显卡才能开启。具体的列表可以到Adobe那里去查,里面有个详细的列表。
    至于上文提到的wmode="gpu"或者"direct",在10.1版本中已经变为可选的了,因为只要硬件支持,Player就会默认开启硬件加速,无需另外设置,只要发布的fla的发布设置里面开启了硬件加速就是了。
    好滴,看到这里,明天可以回去考虑升级开发环境的Player了。

相关内容推荐