您好!欢迎你光临水做的女人;制作方法(冷傲天)_风尘醉笛!

体育

I

交友

I

论坛

I

会员注册

I

本站搜索

I

收藏本站

当前位置:首页 >>>特效园地>>>冷傲天>>>水做的女人;制作方法(冷傲天)
水做的女人;制作方法(冷傲天)
发表日期:2009/7/25 16:24:00 出处:冷傲天 作者:冷傲天 发布人:冷傲天涯 已被访问 2346


http://jnxdh888.bbs.id666.com/UpFile/UpAttachment/2009-4/200949183120.swf

 

AS打造液化效果


1 . 打开flash文档,舞台大小420*400背景色黑,给文档取名液化效果,再建立三个图层,图层1取名模糊层,图层2取名影片层,图层3取名AS层。
2 . 在图层1即(模糊层)第一帧处,用工具栏椭圆工具笔触颜色无,填充色白色,绘制一个椭圆360*360,转换为影片剪辑。打开属性面板,实例名称:mask_mc,滤镜、模糊 X 100   Y 100
3 . 导入一张图片到库,从库把图片拉放在图层2即(影片层)第1帧,再把图片转换为影片剪辑。(注:如果给图片影片添加动感效果,可双击主场景图片进入到图片影片剪辑元件场景里添加图层来制作自己想要的动感画面)。打开属性面板,实例名称:pic_mc.
4 . 点击图层3即(AS层)第1帧,右击鼠标点击动作,输入以下AS语名:


this.createEmptyMovieClip("theScene", this.getNextHighestDepth());
var maxImages:Number = 20;
//创建一个函数用来创建这些若干个遮照和图片
dupeAndPlace = function (image:MovieClip):Object {
     //创建一个对象用来存放这些遮罩和图片
     var arrHolder:Object = new Object();
     //创建两个数组一个用来存放图片,一个用来存放遮罩:
     arrHolder.pics_arr = new Array(0);
     arrHolder.masks_arr = new Array(0);
     //用一个for循环来创建这些图片和遮罩:
     for (var i = 1; i<maxImages; i++) {
       //用两个变量来代表图片和遮罩,这样一个循环下来,就产生了20个图片和遮罩,当然这时还没创建,只是产生了20个名称而已:
       var dnm = "image"+i;
       var mnm = "mask"+i;
       //创建两个对象,用来存放将要产生的遮罩和图片的属性:
       var imgObj = {_x:image._x, _y:image._y, _xscale:100+(i*1.7), _yscale:100+(i*1.7)};
       var maskObj = {_xscale:Math.floor(100/i+3), _yscale:Math.floor(100/i+3), _x:this._xmouse, _y:this._ymouse};
       //创建两个对象分别复制图片和遮罩,并将上面两个对象中存的属性赋给它们。
       var theDupedImage = image.duplicateMovieClip(dnm, theScene.getDepth()+i, imgObj);
       var theDupedMask = mask_mc.duplicateMovieClip(mnm, theScene.getDepth()+(i*50), maskObj);
       //然后将遮罩应用于图片上:
       theDupedImage.setMask(theDupedMask);
       //然后将遮罩和图片存到上面创建的数组中。
       arrHolder.pics_arr.push(theDupedImage);
       arrHolder.masks_arr.push(theDupedMask);
       //将舞台上的mask_mc元件隐藏。
     }
     mask_mc._visible = false;
     //返回存放这些遮罩和图片的对象:
     return arrHolder;
};
//上面这些动作都是在for循环中,因此,到现在就已创建了20对大小不一遮罩和图片,并且都被设置了遮罩和被遮罩的关系。
//下面创建一个函数使这些遮罩向鼠标靠近:
makeWaves = function (masks_arr:Array) {
     for (var i = masks_arr.length; i>0; i--) {
       masks_arr._x += (this._xmouse-masks_arr._x)/maxImages*i;
       masks_arr._y += (this._ymouse-masks_arr._y)/maxImages*i;
     }
};
//创建一个函数用来执行上面创建的创建这些遮罩和图片的函数,并在每隔一帧时调用一次让遮罩靠近鼠标的函数:
this.liquefyImage = function(theImage:MovieClip) {
     var arrHolder:Object = dupeAndPlace(theImage);
     onEnterFrame = function () {
       makeWaves(arrHolder.masks_arr);
     };
};
pic_mc.onRollOver = function() {
     liquefyImage(pic_mc);
};

5 . 测试影片OK

双击自动滚屏 【打印本页】 【关闭窗口
 相关评论:



冰雨
(2009/8/19 19:35:00) [115.60.89.]

咋恁多啊


feihua1025
(2009/4/18 6:59:00) [114.229.5.]

傲天老师的教程写得详细具体,感谢傲天为大家提供了一个学习的舞台!

 发表评论:共有 2 条评论

身份选择:会员 游客(游客不需要输入密码)
用 户 名: 密 码:
评论内容:
(最多评论字数:500)

关闭

风尘醉笛 | 设为首页 | 加入收藏 | 联系我们 | 进入管理 | 关于站长 | 本站搜索

联系电话:QQ:454774619 QQ群号: 49478231 联系人:风尘醉笛

琼icp备09005167