[ 来源:www.it55.com | 作者: | 时间:2007-07-12 | 收藏 | 推荐 ] 【大 中 小】
vd;k;l www.it55.com rdfg
制作思路:创建我们必须的一个影片剪辑, 对其进行不断的复制, 控制它的移动,最后加入模糊效果. 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
操作方法:
1、新建一个Flash文档,将其命名为motionblur.fla.保存.文件的大小为500*300。
2、在主场影中绘制一个二维图像,它所添充的颜色有你自已来定,以及的他的形状,如果你喜欢,你可以制作成任意的形状.在本例中,我们绘制的是一个添了色的同心园.如下图所示: http://www.it55.com/
IT资讯之家 www.it55.com
vd;k;l www.it55.com rdfg
注意一点,当前的图像是放大后的效果,在主场景中绘制完成后,将它的长宽大小设为25最好,不要过大。因我们在代码中还要对其进行缩放操作。
www.it55.com
3、选中场景中的园环,按下F8,将其转换为影片剪辑,注意一点在转换为影片剪辑时要将的它的注意点置于中心位置,如下图所示: vd;k;l www.it55.com rdfg
it55.com
it55.com
4、删掉主场景中已创建的园环,我们一旦创建了影片剪辑,这个影片剪辑就会存在于库中,在后面的代码中我们将使用attachMovie方法从库中粘贴影片剪辑到场景中.ok.按下ctrl+l打开库面板,选中我们刚创建的影片剪辑,然后右击选择链接属性如下图所示: http://www.it55.com/
www.it55.com在线教程
www.it55.com
完成后会弹出一个窗口,在链接窗口中,我们输入链接名称,这本例中输入ball.并钩选”为actionscript导出”确定,如下图所示: 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
sflj www.it55.com kg^&fgd
45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
4、返回到主场景中,选中层上的第一帧,按下F9打开Actionscript面板,我们准备输入代码.按照我们的思路,我们先来看复制并控制园环的移动.在其中加入如下代码: www.it55.com在线教程
代码: 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
5、此时你就可以测试你的影片,你就会发现现在我们的鼠标已经能够控制多个影片剪辑移动了,并且有一个特点,大的移动的慢,小的移动的快. http://www.it55.com/
解释代码: www.it55.com在线教程
这段代码基本上分为两段,前面一段是我们是进行复制,复制出我们需要的30个影片剪辑,后半
段是控制这30个影片剪辑的移动。我们先看前半段 免费资源www.it55.com
代码: www.it55.com在线教程
如果你单独将这段代码粘到flash中,你会发现我们已经成功的复制出30个的影片剪辑,并且在这30个影片剪辑的大小,透明度均是不同的.这也是前面这段代码的作用,这里我们使用了attachMovie的方法,将之前我们创建好的影片剪辑ball通过链接id将其不断的粘贴到场景中以达到不断复制的目的.有一点在这段代码中我们指定的一个引用名为var temp_mc = attachMovie("ball", "ball"+i, i);
如果你最后一个大括号之前trace(temp_mc),你会得到下面的结果: www.it55.com在线教程
www.it55.com
通过循环,我们得到了我们需要的所有复制后的影片剪辑实例.通俗的说,temp_mc是所有我们复制出的影片剪辑的引用名称.这样我们在后面使用代码如:
代码:
45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
it55.com
你所指定给的temp_mc的属性并不单独代表某一个,而是全部的影片剪辑,而每个我们指定的属性都是随机值,所以你在测试时看到的结果便是大小不同,alpha不同的园环.
接下来我们看后半段 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
代码:
这半段的代码目的在于使用onEnterFrame帧循环通过_xmouse,_ymouse来控制园环的移动,我们在哪里体现的是光标移动的呢.如下: www.it55.com
代码: IT资讯之家 www.it55.com
www.it55.com
在这两行代码中,分别定义为x,y方向上的速度, 以屏幕为中心开始,计算鼠标与中心的距离,当光标与中心的位置越远时, Stage.height/2-_ymouse计算的值就越大,反之则越小,这样Xspeed和Yspeed的值就会有一个大小的和方向的变化,因为_xmouse,和_ymouse是有正负之分的,同时我们还发现在缓动设定缓动系数时,我们使用this._xscale和this._yscale做被除数,因为这两个值是随机的,同样会反映出如出Xspeed和Yspeed的大小之分,这也意味着,如果园环被缩放的很小,那么它的移动速度也是很快的.反之移动速度就会较慢.ok.如果你理解了这两句,其它的代码,除了this._x+=Xspeed和this._y+=Yspeed是用来移动园环外,其它均为限制园环的边界的.
(阅读次数:)