遮罩与遮盖同时出现的图片切换-栅格化切换

王朝other·作者佚名  2006-11-24
宽屏版  字体: |||超大  

先看效果:

这是在第一种图像切换的基础上,添加一些表面特效而做出来的,方法也并不复杂,只要再做一个图层,放在最上面,内容跟遮罩层一样就行了.

具体做法:

1.打开上一次做的FLA文件,另存为一个新的文档,或者直接在WINDOWS下拷贝一个副本.做第二类特效.

2.作为表面特效,应该在遮罩层的上方再添加一个图层.接着,把遮罩层的内容拷贝到新添加的图层里.

因为最后表面是看不到任何覆盖的东西,所以,里头MASK的动画必须最后一帧要不什么都没有,要不全透明.但是,为了不使原来的动画发生改变,我们复制一个元件的副本.

3.点中刚拷贝的MASKFIELD,右键-复制元件,命名为MASKFIELD2,实例名一样.

4.双击MASKFIELD2,进入编辑状态,用3中的办法把MASK复制一个副本MASK2,实例名可以还是MASK.

5.双击进入MASK2,编辑MASK2.这里提供一个动画方案:先删除原来所有的帧,然后在第一帧画跟原来一样大的正方形.把颜色调成白色,ALPHA为0%;然后在第7和第15帧分别插入一关键帧,把第7帧中的正方形的ALPHA改为100%;在第1到第7,以及第7到第15帧之间创建形状补间动画.

6.接着,CONTROL元件也复制一个CONTROL2副本,对里面第二帧的代码进行一些小修改:就是把里头的MASKFIELD全改为MASKFIELD2.

所以最后,三帧的代码分别是

FRAME1:

step=5//定义每次时间轴循环要出现正方形的个数,如果太少,图象切换需要很长时间,太大了,计算机负担大,而且效果出得太快,也不好看.

num=0//记录被复制的MASK的个数.

FRAME2:

for (j=1; j<=2; j++) {

for (i=num; i<=num+step; i++) {

duplicateMovieClip("_parent.maskfield.mask", "mask"+i, i);//复制相应的MC

_parent["maskfield"+j]["mask"+i]._x = _parent.index[i].split("_")[0]*25

_parent["maskfield"+j]["mask"+i]._y = _parent.index[i].split("_")[1]*25

//根据随机分配的索引,定义MC的位置.其中25是正方形的边长.

}

}

if (num>_parent.maxhor*_parent.maxver-1) {

//该条件成立,意味着复制数量已经足够,复制完毕,所以停止.

stop();

}else{

num += Math.min(_parent.maxhor*_parent.maxver-num, step);

//否则记录本次运行复制的MC个数.

}

FRAME3:

gotoAndPlay(2);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有