| AI教程 | Flash教程 | Fireworks教程 | Painter教程 | CDR教程 | CAD教程 | 3Dmax教程 | Maya教程 | 摄影技巧 | 广告文案 | LOGO案例 | PS教程

Flash 8 运动模糊

  本文作者:egoldy

  文章出处:http://www.webstudio.com.cn

声明:此教程版权归webstudio.com.cn所有,转载请注明出处。

  演示文件: 查看演示 、FLA源文件下载

  制作思路:创建我们必须的一个影片剪辑, 对其进行不断的复制, 控制它的移动,最后加入模糊效果.

  操作方法:

  1.新建一个Flash文档,将其命名为motionblur.fla.保存.文件的大小为500*300.

  2.在主场影中绘制一个二维图像,它所添充的颜色有你自已来定,以及的他的形状,如果你喜欢,你可以制作成任意的形状.在本例中,我们绘制的是一个添了色的同心园.如下图所示:

  

  注意一点,当前的图像是放大后的效果,在主场景中绘制完成后,将它的长宽大小设为25最好,不要过大.因我们在代码中还要对其进行缩放操作.

  3.选中场景中的园环,按下F8,将其转换为影片剪辑,注意一点在转换为影片剪辑时要将的它的注意点置于中心位置,如下图所示:

  

  4,删掉主场景中已创建的园环,我们一旦创建了影片剪辑,这个影片剪辑就会存在于库中,在后面的代码中我们将使用attachMovie方法从库中粘贴影片剪辑到场景中.ok.按下ctrl+l打开库面板,选中我们刚创建的影片剪辑,然后右击选择链接属性如下图所示:

  

  完成后会弹出一个窗口,在链接窗口中,我们输入链接名称,这本例中输入ball.并钩选”为actionscript导出”确定,如下图所示:

  

  4.返回到主场景中,选中层上的第一帧,按下F9打开Actionscript面板,我们准备输入代码.按照我们的思路,我们先来看复制并控制园环的移动.在其中加入如下代码:

  代码:

 //定义要复制的总数
var num = 30;
//使用for循环开始复制
for (var i = 0; i<num; i++) {
  //设定随机缩放
  scale = random(300);
  //设定随机的_alpha透明度
  alpha = random(10000/scale)+40;
  //使用attachMovie将库中的ball贴加到场景中,同时定义一个引用名为temp_mc.
  var temp_mc = attachMovie("ball", "ball"+i, i);
  //指定temp_mc的属性值.
  with (temp_mc) {
    _x = random(Stage.width);
    _y = random(Stage.height);
    _xscale = scale;
    _yscale = scale;
    _alpha = alpha;
  }
  //针对temp_mc使用onEneterFrame进行循环以使所有的园环沿着光标的反向移动
  temp_mc.onEnterFrame = function() {
    Yspeed = (Stage.height/2-_ymouse)/this._yscale*12;
    Xspeed = (Stage.width/2-_xmouse)/this._xscale*12;
    
    //x,y方向的移动和条件限制
    this._y += Yspeed;
    if (this._y>Stage.height) {
      this._y = 0;
    }
    if (this._y<0) {
      this._y = Stage.height;
    }
    this._x += Xspeed;
    if (this._x>Stage.width) {
      this._x = 0;
    }
    if (this._x<0) {
      this._x = Stage.width;
    }
  };
}

  5.  此时你就可以测试你的影片,你就会发现现在我们的鼠标已经能够控制多个影片剪辑移动了,并且有一个特点,大的移动的慢,小的移动的快.

  解释代码:

  这段代码基本上分为两段,前面一段是我们是进行复制,复制出我们需要的30个影片剪辑,后半段是控制这30个影片剪辑的移动.

  我们先看前半段

  代码:

var num = 30;
//使用for循环开始复制
for (var i = 0; i<num; i++) {
  //设定随机缩放
  scale = random(300);
  //设定随机的_alpha透明度
  alpha = random(10000/scale)+40;
  //使用attachMovie将库中的ball贴加到场景中,同时定义一个引用名为temp_mc.
  var temp_mc = attachMovie("ball", "ball"+i, i);
  //指定temp_mc的属性值.
  with (temp_mc) {
    _x = random(Stage.width);
_y = random(Stage.height);
    _xscale = scale;
    _yscale = scale;
    _alpha = alpha;
  }
}

主题测试文章,只做测试使用。发布者:绘画吧,转转请注明出处:http://www.huitu8.com/shejijiaocheng/Flashjiaocheng/20190828/91506.html



联系我们

在线咨询:点击这里给我发消息

邮件: