欢迎来到学术参考网

用Action script动作脚本制作flash下雨特效

发布时间:2015-07-07 09:30

提要通过一个下雨特效的制作,介绍flash as动作脚本的使用,主要是利用 function、duplicate-movieclip、setproperty、set variable、if、setinterval,实现特效的制作、速度的快慢控制、选择播放的顺序。
  关键词:flash;as脚本;下雨特效

  一、引言
  flash是macromedia公司推出的一种优秀的交互式动画制作软件,具有体积小、互动性强、兼容性好的特点,一直受到动画制作者的青睐。如今,因特网上已具有成千上万个flash站点,让人尽情地享受这种多媒体技术所带来的动感,flash动画势必将成为未来网页的一大主流。在flash动画制作过程中,as动作脚本扮演着一个重要的角色,动作脚本是flash动画中使用的程序脚本,通过动作脚本,可以对动画进行高级的逻辑控制,能实现时间轴的特殊效果,能帮助用户按照自己的想法更加准确地创建电影。效果更加精彩纷呈,但是如何能掌握好flash动作脚本制作技术,已经成为广大学习者迫切需要解决的问题。本文通过制作下雨特效实例,让读者了解和掌握一些动作脚本的运用。
  二、认识和理解动作脚本术语
  和任何脚本撰写语言一样,flash动作脚本既有和其他语言相同之处,比如数据类型、关键字、运算符、表达式、函数、变量等等,但也有自己的独特专用术语,它本身具有独特的专业含义,只有准确地理解术语,才能读懂语句,真正地理解脚本的含义,逐步构建自己编写动作脚本的基础。
  1、动作:是在播放swf文件时指示swf文件执行某些任务的语句。
  2、类:类是可以创建与定义新类型的数据类型,若要定义类,需在外部脚本文件中使用class关键字。
  3、构造函数:构造函数是用于定义类的属性和方法的函数。
  4、事件:事件是swf文件播放时发生的动作。例如,在加载影片剪辑,播放头进入帧,用户单击按钮或影片剪辑,或者用户按下键盘上的键时,会产生不同的事件。
  5、实例:实例是属于某个类的对象,类的每个实例均包含该类的所有属性和方法。
  6、方法:方法是与类关联的函数。
  7、实例名称:实例名称是脚本中用来表示影片剪辑和按钮实例的唯一名称,可以使用属性面板为舞台上的实例指定实例名称。
  8、对象:对象是属性和方法的集合,每个对象都有其各自的名称,并且都是特定类的实例。
  9、包:包是位于指定的类路径目录下,包含一个或多个类文件的目录。
  10、属性:属性是定义对象的特性。
  11、目标路径:目标路径是swf文件中影片剪辑实例名称变量和对象的分层结构地址。
  三、制作特效用到的as脚本
  1、function——用户自定义函数。定义一个函数function,要后跟函数名、参数列表和代码块。函数定义的形式为:
  function函数名(参数列表){代码块;}
  其中,function表明函数的头部。函数名,是该函数的名称,一般都是选用能够代表函数功能的词或词组。参数列表,是用来给函数传递参数,参数可有可无。代码块,放在大括号里面,是执行function函数的语句,可以有多个语句组成。
  2、duplicatemovieclip——复制影片剪辑。语法形式为:duplicatemovieclip(目标、新名称、深度)。目标是指要复制的电影剪辑的名称和路径,新名称是指复制后的电影前辑实例名称,深度是指新复制的影片剪辑的唯一深度级别。复制影片经常要与影片属性控制(特别是_x,_y,_alpha,_rotation,_xscale,_yscale等属性)结合才能更好地发挥复制效果。复制影片还经常要和循环语句配合,才能复制多个影片剪辑。
  3、setproperty——设置影片剪辑的属性。语法形式为:setproperty(属性,目标,值)。属性是指你想控制影片剪辑的那些属性,flash给我们提供了14个影片剪辑的属性,我们可以根据需要来选择设置。值是指设置的随机函数值。
  4、set variable——给变量赋值。与其他动作不同,它并不在脚本中出现,而是在编写脚本时,使用它来创建赋值语句框架,便于填写变量和变量的值。
  5、if——如果。如果条件符合,即true,就执行代码;条件不符合,就不执行。语法为:if (条件){//代码}。
  6、setinterval——设置时间间隔。语法形式为:setinterval(函数名,间隔时间)。函数名即为function已自定义的函数名,间隔时间以秒为单位。
  四、下雨特效的制作过程
  通过一个实例,来完成一个雨点飘落过程,且随机出现大小和速度不同的雨点。通过添加几句代码可以省去很多繁杂的动画处理。

  1、打开flash,新建一个文档,画布宽550px,高400px,帧频率默认,舞台背景颜色为黑色。
  2、新建图形元件,名称命名为下雨,在这里可以起中文名称,在注册点位置用直线绘制雨点,颜色为白色。新建影片剪辑元件,命名为雨点影片。用直线工具绘制细长雨点,再在第三十帧处按下快捷键 f6插入关键帧,将所在第三十帧的雨点向下方拖动一段距离。在第一帧至第三十帧时间轴添加动画(运动)变化,然后添加运动引导层,画一条直线作为雨点飘落的路径。在第一帧上:把雨点图形跟曲线顶部对齐,注意要把图形的中心圆放在线条上;在最后一帧上:把雨点图形跟曲线底端对齐,形成了一个雨点顺着路径运动的动画。
  3、回到场景中,把库面板中的雨点影片剪辑元件拖拽到画布中。在属性面板上,把影片剪辑名称命名为rain,这个必须以英文命名。再在第三十帧处按下快捷键f5插入帧。此目的是,和影片剪辑元件中的雨点落下的时间保持一致,测试动画即可。如动画运动的大小跟画面尺寸不一致,可在雨点影片剪辑元件中进行调整。
  4、动作面板有两种编辑模式:标准模式和专家模式,可以在两种模式之间进行切换。在标准模式的动作面板下,打开目录双击语句,右边的语句描述框中将显示它的描述,这种模式比较适合初学者。在专家模式下,可以在编辑器中直接输入动作脚本,比较适用于对动作脚本比较熟练的用户。本文所用的代码都是在标准模式下完成的。有些动作设置参数时,在一些参数框右边有一个表达式复选框。对于这种参数,应该根据你输入的参数的类型决定是否要勾选此复选框。例如,我们使用set variable动作,给变量n赋值。如果你给n提供的参数是一个字符串常数,就不要勾选此复选框。反之,则要就要勾选该复选框。新建图层2,在初始帧上设置动作。//设置变量n,值为1,n=1。
  5、在第二层的第一帧放上as脚本,脚本如下:
  c=1;
  //定义变量c初值为1
  在第二帧放上as脚本,脚本如下:
  function aa(){
  //定义名称为aa的function函数
  duplicatemovieclip("mc",c,c);
  //执行复制影片剪辑命令,在这里出现的新名称
  setproperty(c,_x,random(550));
  //设置各影片剪辑_x属性,在550px以内的随机
  setproperty(c,_y,random(-100));
  //设置各影片剪辑_y属性,在550px以内的随机
  updateafterevent();
  c++;
  //设置变量为递增
  }
  kk=setinterval(aa,90);
  //最后对aa函数,作周期循环。比如 90秒执行一次(时间可自行设定),时间的大小可调节稀疏度的大小。
  按ctrl+enter测试文档,最终效果如图1所示。(图1)

  主要参考文献:
  [1]柴孟华,李胜伟.深入浅出flash mx 2004动画设计[m].北京:中国铁道出版社,2006.
  [2]方晨.操作与实例flash mx 2004中文版[m].上海:上海科学普及出版社,2004.
  [3]齐锦刚,曹丽云等.flash mx 2004活学活用300问[m].北京:机械工业出版社,2005.
  [4]李学进,杨微.flash在教学中的应用[j].电脑学习,2006.2.
  [5]章精设,缪亮等.flash actionscript 2.0编程技术教程[m].北京:清华大学出版社,2005.

上一篇:浅谈计算机技术创新对动漫领域的推动作用分析

下一篇:高校《计算机应用基础》教与学的思考