Flash的新用途 - Scaleform

     

AutoDeskt推出的ScaleForm是一套游戏界面解决方案,它使用Flash来创建UI,适用于个人电脑、游戏机以及 iOS/Android 驱动的移动设备。


Scaleform4.0之前的版本仅支持AS2,但现在他们开始兼容AS3了。在Scaleform中,并非使用Flash Player来播放我们创建的SWF ,而是使用了ScaleForm自己的播放器,这些播放器有对应不同DirectX版本。由于并非使用官方的播放器,一些在Flash Player中能正常运行的swf在Scaleform中可能会出现问题。ScaleForm提供了一个兼容性的文档,描述了支持AS2/AS3中的哪些功能。但是你不能全指望它,唯一检测你swf能正常运行的标准是将你的swf拖入他们提供的播放器里进行测试。比如他们的文档声称能支持显示对象的.mask方法,但事实却不是这样,所以我们还是只能在时间轴上画遮罩了。


Scaleform实现了C++和Flash之间的通信,他们提供了几种不同的方式,对于Flash端来说,分别是FSCommand ,ExternalInterface,以及Direct Access API,相信熟悉Flash的朋友肯定对前两个类不陌生。Direct Access API则更加强大,C++能直接操作Flash中的元素,效率更高。


Scaleform还提供了一些很有用的小工具。其中MMO KIT最让人激动,它实现了多人网游中的很多界面功能,比如,技能栏,背包,拖拽,工具提示等,这些都是Flash/as3实现的,并且提供源代码。MMO Kit使用Direct Access API和C++进行通信,由于C++能直接调用Flash中的方法,所以界面元素可以对应C++端的某个变量,当变量改变,Flash中的某个方法将被调用,进而响应数据的变化。也就是说,它实现了类似于绑定的机制。


已经有大量游戏采用了Scaleform的技术,比如光环,质量效应,星际争霸2,波斯王子等著名游戏。随着Scaleform的进一步发展,相信越来越多的游戏厂商将采用这项技术,很高兴看到Flash能在这个领域取得一席之地。


  

你可能感兴趣的:(Flash)