Flash 8 光影变换效果

2016-02-19 17:16 7 1 收藏

下面这个Flash 8 光影变换效果教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!

【 tulaoshi.com - 效果 】

  演示文件: 查看演示

  制作思路: 创建影片剪辑,其中此影片剪辑中包含了五帧,每一帧上有不同颜色的小球,在代码中我们会通过Actionscript来控制它跳转帧已定位在不同颜色的小球上,来实现不同颜色小球之间相互叠加,并在场景中复制,通过Actionscript控制它的自动移动,并应用融合效果.

  操作方法:

  1.新建一个Flash文档,文件的场景大小设置为590*350.背景为黑色.帧频设置为31,将其另存为blendmode3.fla.

  2.打开新建的blendmode3.fla.在主场景中绘制一个38*38大小的园形二维形体,按下shift+F9打开混色器,选择放射状添充,当选择蓝色,如下图所示.

  

   注意右边的混色器,在下面的滑块中,我们左边用的是蓝色,右边是也蓝色,但它的透明度是0,添充后效果如下图所示。

  

  注意这个园形的大小当前为我们放大后观看的效果,它的原本大小为38*38.

  3.选中这个园形按下F8键,将其转换为图形符号,命将它的名称命名为Blue.同时注意它的注册点。将注册点置于中心位置。如下图所示。

  

  4.确定后我们就创建完成了Blue符号,依照相同的方法,我们需要创建另外4种颜色的小球,在本例中我们创建了如下几种颜色的小球。

  

  5.还有一个创建不同颜色小球的简单的方法,选中我们刚创建的蓝色小球,右击选择直接复制。然后在进入到复制后的图形元件内部,进行修改颜色。

  6.创建完多个小球之后,我们在主场景保持空的。如果场景上有图形元件要删去。 然后按下Ctrl+F8.创建一个新的影片剪辑,我们将它命名为Clip.然后将我们刚刚他建的五个不同颜色的小球元件,从库中拖至clip影片剪辑的帧上,如下图所示。

  

  7.ok.完成了这一步之后,返回到主场景中,选中库中我们刚刚创建的clip影片剪辑,右击选择链接。会打开链接标识窗口。如下图所示。

  

  在打开的窗中,先选中为Actionscript导出,然后在链接标识处输入出境partical名称。确定。我们在此处创建的链接名是为我们在主帧上添写代码时,用来使用attachMovie进行贴加复制操作的。

  8.完成上面的操作之后。选中主场景上的第一帧,按下F9,打开Actionscript面板。我们准备输入如下代码:

//定义中心位置varcx=180;varcy=180;//设定循环20次,准备从库中复制链接id为partical的影片.for(vari=0;i20;i++){  //复制影片剪辑,引用名称为mc.  varmc=this.attachMovie("partical","p"+i,i);  with(mc){    //初始化影片剪辑的位置,注意此时cx,cy是用来调整mc实例的偏移位置的.    _x=cx+Math.random()*60;    _y=cy+Math.random()*60;  }  //针对mc应用融合模式类型"add"  mc.blendMode="add";  //设定mc实例的角度随机值  mc.tx=random(360);  mc.ty=random(360);  //设定用于mc角度的增量随机值  mc.xtempo=Math.random()/10;  mc.ytempo=Math.random()/10;  //设定mc实例的速度随机值  mc.xd=Math.random()*10+1;  mc.yd=Math.random()*10+1;  mc.x0=mc._x;  mc.y0=mc._y;  //跳转到指定的帧,以变换不同颜色的小球上.  mc.gotoAndStop(random(5)+1);  //通过onEnterFrame循环,来让粒子移动.  mc.onEnterFrame=function(){    this.tx+=this.xtempo;    this.ty+=this.ytempo;    this._x=this.x0+Math.sin(this.tx)*this.xd;    this._y=this.y0+Math.cos(this.ty)*this.yd;  };  }

  9,测试你的影片,你就会看到如下面的效果:

  解释代码:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

  首先从整段上代码上,我们实际上只用了一个for循环。这个for循环的作用是复制20个链接名为partical的影片剪辑。然后我们在循环的内部对复制后的粒子引用名mc进行初始化,控制。 起始的两行是用来调整所有粒子的相对屏幕中的位置的,

//定义中心位置varcx=180;

  varcy=180;接下来我们从for循环的内部开始说起,我们将它分为块,一块是初始化复制后的粒子,另一段是为粒子实例mc 加入动态属性,为后面的控制移动做准备。第三块则是使用onEnterFrame循环来控制移动。

  初始化复制后的粒子:

//复制影片剪辑,引用名称为mc.  varmc=this.attachMovie("partical","p"+i,i);  with(mc){  //初始化影片剪辑的位置,注意此时cx,cy是用来调整mc实例的偏移位置的.    _x=cx+Math.random()*60;    _y=cy+Math.random()*60;
  }

  这一段代码,现在来讲我们已经很熟知了,我们通过顶端的for循环20次。将库中的链接名为partical的粒子复制到场景中。复制的方法我们使用是的是attachMovie的方式,复制后的影片剪辑更名为p +I,也就是说你复制的结果应是p0,p1,p2,p3..p19,而所有的这些影片剪辑我们为它起个实例名为mc.它代表了所有复制得到的影片剪辑。在with内部,我们开始指定这些粒子的初始位置。注意此时我们用上了cx,cy.并且加上了随机数60,也就是说料子初始化的位置在180-240的位置之间。

  为粒子实例mc 加入动态属性:

//针对mc应用融合模式类型"add"  mc.blendMode="add";  //设定mc实例的角度随机值  mc.tx=random(360);  mc.ty=random(360);  //设定用于mc角度的增量随机值  mc.xtempo=Math.random()/10;  mc.ytempo=Math.random()/10;  //设定mc实例的速度随机值  mc.xd=Math.random()*10+1;  mc.yd=Math.random()*10+1;  mc.x0=mc._x;  mc.y0=mc._y;  //跳转到指定的帧,以变换不同颜色的小球上.
  mc.gotoAndStop(random(5)+1);

  在这段代码的开始的位置mc.blendMode ="add" 便是我们加入融合模式的重点所在了,如果没有这一些就不会出来相叠加后的融合效果。但实现它的前题是我们必须要处理如基本了粒子活动,所以习惯上我们都是最后才加上滤镜或是融合模式。在这段代码中,所有的都是为第三段的循环准备的。其中有两句是用来做为角度的增量随机值的。这个角度增量值实际是为了在onEnterFrame循环中增加的角度的变化。使效果变得更明显。这一段中的最后一句也是重点,因为我们在partical的影片剪辑中放置了五个不同颜色的小球,我们通过随机跳转命令来达到不同颜色小球的切换。

  onEnterFrame循环来控制移动:

//通过onEnterFrame循环,来让粒子移动.  mc.onEnterFrame=function(){    this.tx+=this.xtempo;    this.ty+=this.ytempo;    this._x=this.x0+Math.sin(this.tx)*this.xd;    this._y=this.y0+Math.cos(this.ty)*this.yd;  };

  在这段代码中,通过将前面定义的动态属性,应用在onEnterFrame循环中,起到决定性作用.

this._x=this.x0+Math.sin(this.tx)*this.xd;this._y=this.y0+Math.cos(this.ty)*this.yd;

  其中this.tx,this.ty,this.xd,this.yd.均为前面定义的动态属性。我们使用了sin()和cos ()方法是为了使每个粒子自身有一个环形的运动路线。

  Ok.在整段代中,我们看到使用融合模式blendmode只有一行,但在这里它显得尤为重要,加上与去掉效果是截然不同的。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

  现在你就可以测试你的影片了。

  接下来我们要在上面的基础上进行一下变化。看看效果会有什么不同。

  我们现在要增加粒子的大小和范围。代码做如下的修改。

//定义中心位置varcx=0;varcy=0;//设定循环20次,准备从库中复制链接id为partical的影片.for(vari=0;i100;i++){  //复制影片剪辑,引用名称为mc.  varmc=this.attachMovie("partical","p"+i,i);  with(mc){    //初始化影片剪辑的位置,注意此时cx,cy是用来调整mc实例的偏移位置的.    _x=cx+Math.random()*590;    _y=cy+Math.random()*350;    _xscale=_yscale=100*Math.random()*5+1;  }  //针对mc应用融合模式类型"add"  mc.blendMode="add";  //设定mc实例的角度随机值  mc.tx=random(360);  mc.ty=random(360);  //设定用于mc角度的增量随机值  mc.xtempo=Math.random()/10;  mc.ytempo=Math.random()/10;  //设定mc实例的速度随机值  mc.xd=Math.random()*10+1;  mc.yd=Math.random()*10+1;  mc.x0=mc._x;  mc.y0=mc._y;  //跳转到指定的帧,以变换不同颜色的小球上.  mc.gotoAndStop(random(5)+1);  //通过onEnterFrame循环,来让粒子移动.  mc.onEnterFrame=function(){    this.tx+=this.xtempo;    this.ty+=this.ytempo;    this._x=this.x0+Math.sin(this.tx)*this.xd;    this._y=this.y0+Math.cos(this.ty)*this.yd;  };  }

  斜体加粗的代码是我们所修改的位置,我们增加了粒子的数量,同时加入了_xscale._yscale.缩放的随机值,这样便会放大粒子增加粒子的重合度。效果如下:

来源:http://www.tulaoshi.com/n/20160219/1614767.html

延伸阅读
标签: PS PS基础
思路:从一款免费软件中导出素材图片加之在photoshop中的后期处理得到最终效果 最终效果预览 1. 首先我们需要下载软件Apophysis 地址:http://www.apophysis.org/downloads.html 使用这款小软件能得到我们想要的流动光影素材,Apophysis下载并安装完毕后请打开软件。 注意:如果你不想下载安装此软件,你可以直接跳到第5步 老狼建议您...
标签: PS PS教程
在一些影视剧中光影特效是一种常见的可以渲染场景气氛的效果,而通过PS的巧妙制作也可以体现出那种光影特效。 1、新建一个文件,填充背景色为黑色。 2、选择工具箱中的“套索工具”,在背景图层上建立如图01所示的选区范围。为选区填充白色,效果如图02所示。取消选区。 图1 图2 3、执行菜单栏中的“滤镜”“模糊”“高斯模糊”命令,...
唯美人像:强化光影效果   ●光圈: F2.8 ●快门速度: 1/60s ●焦距: 50mm ●感光度: 100 ●曝光补偿: EV-0.3 机位解析 拍摄指导 这是一张突出光影的照片,顶逆光很好地刻画出金色的发际光以及模特脸部和手臂的轮廓光,伸出手臂的引导摆姿,让模特的眼神凝视有了依托,烘托出庄重、宁静的画面氛围。强烈的逆光进入...
  参考教程: /jzxy/tuLaoShi.com200904/59735.html     参考效果图
标签: PS PS教程
在PS中,“自由变换”是功能强大的制作手段之一,熟练掌握它的用法会给工作带来莫大的方便。  大家都知道在PS中编辑(Edit)菜单下有一变换菜单,它的子菜单包含缩放、旋转等等,初学者在对这些菜单的理解上往往会以强记的方式,而学习效果并不好。  这里,我根据我自己的一些经验和体会,对“自由变换”作了一个小结,以此献给初学者&...

经验教程

857

收藏

8
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部