[转]场景过渡效果

[url]http://uh.9ria.com/link.php?url=http://bbs.9ria.com/viewthread.php%3Ftid%3D38570[/url]

这里用了两张图片作为示例,实际上设置切换函数就可以适用于其他的情况(这里是切换Image组件的源)


示例源码:
[url]http://code.google.com/p/ghostcat/source/browse/trunk/example/src/TransitionExample.as[/url]

SWC下载:http://ghostcat.googlecode.com/s ... at/bin/GhostCat.swc


TransitionTransferLayer用来处理位图特效渐变(溶解,切割,马赛克等)
TransitionObjectLayer用来渐变显示一个过渡对象
TransitionCacheLayer缓存当前图像并进行Tween
TransitionMaskLayer使用一个动画作为Mask
此外还有TransitionMovieClipLayer不方便演示并没有放出,它可以让一个动画来控制过渡,指定在不同的动画阶段播放不同的帧动画

考虑到这个使用上的确有点复杂,先说明一下

所有过渡对象都是用createTo(xx)创建到一个容器中显示,显示完后自动删除自身
他们的第一个参数都是切换函数,就是一个显示完要显示下一个的时候执行的函数,在里面写上换图片或者其他即可。
然后,其他的则根据参数名称和类型设置,就像上面那些一样,所有特效被归结成了4种方案,你首先要将自己想做的特效归到其中一类去,然后设法实现。诸如白屏,其实就是显示一个白色的方块,然后直接加入到TransitionObjectLayer里。具体的可以看例子,说很难说。。这全看你的归纳能力了。

其中比较难理解的是GBitmapEffect和GScriptMovieClip,GBitmapEffect就是一般的用来处理位图的对象,他的参数其实是个Function,然后Function根据传入的3个参数来生成位图,而用的时候只要直接套用就可以了。套用已经写好的Handler,它能做出溶解,马赛克,切割等效果。然后将GBitmapEffect加入TransitionTransferLayer即可。特别的,GBitmapEffect也可以加入TransitionObjectLayer,产生的结果就是渐入然后渐消。

而GScriptMovieClip是一种特殊的MovieClip。
TransitionMaskLayer,TransitionMovieClipLayer的参数都是GMovieClipBase对象(也可以直接传入MovieClip),GMovieClipBase则实现了MovieClip的扩展,比如可以实现位图动画,动画拼接,还有现在这个“代码动画”,GScriptMovieClip是通过传入的Handler来每次绘制每一帧,最终开放的接口则和其他动画统一了起来。这些是另一个包的内容,是后话。
总之,你可以把整个GScriptMovieClip当成一个普通MovieClip,只不过它是代码画出来的,而不是FLASH IDE 画出来的。当然,你要用一个FLASH IDE 画出来的代替也可以。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值