Flash特效——雪花飘落
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.5 5 编写雪花 花脚本
在库中双 双击 Snow 打开下雪特 打 特效影片剪辑 辑。点击动 动作层第 1 帧。按 帧 F9 开 开始输入脚 脚本。 首先要定义一个变量 量,用于记载 载雪花横向 向漂移的方向,因为横 横向漂移只有 有 2 个方向 向,可以认为 为漂 移的 的方向是否是 true(向 向右)或者 者 false(不是 是向右) 。 var Dir rection:B Boolean; ; 接着定义一个初始化 化函数,这 这个函数将重 重置雪花的 的位置,横向 向漂移方向 向,以及比例 例大小。 on init() ) { functio //随机 机初始化雪 雪花横向移动 动方向 if (M Math.ran ndom()>0. .5) { Di irection n = true; ; } els se { Di irection n = false e; } //根据 据下雪场景 景因数随机调 调整雪花大 大小 _xsca ale = _y yscale=_p _parent.A A*Math.random()+ +_parent.B; //将雪 雪花置于顶 顶端,并随机 机放置一个 个水平位置。 。 _y = 0;
本教 教程默认读 读者已经比较 较熟悉 Flas 是 ActionScr 本。 sh 的界面,采用的是 ript2.0 脚本
2.制作过程 程
2.1 动画结构 构
在开始动手之前有必 必要来说明以下结构问 问题。不然 然会产生意想 想不到的结 结果。
下雪场景
提 提示
雪花 花
雪花 雪
雪花
雪花
上图所示 示, “下雪场景” 、 “提 提示”以及“雪花”都 都是影片剪辑 辑。其中“提示”和“ “雪花”在“下 雪场 场景”的里面 面。 “雪花场 场景”用来 来控制整个下 下雪特效。如 如果你的下 下雪场景在某 某个图片( (比如建筑物 物)
2.3 3 制作雪花 花以及下雪场景
先建立一个空白的动 动画, 舞台大 大小使用默 默认的 550×400, 背景 景色调整为黑 黑色, 帧频调 调整为 36fp ps。 接下来绘 绘画一个雪花 花。菜单栏 栏上选择【插 插入】→【新建元件】 】 。名称输入 入 Snow,类 类型选择【 【影 片剪 剪辑】 。链接 接选择【为 ActionScr ript 导出】和 和【在第一 一帧导出】 , 【标识符】输入 Sno ow。如图:
回到主舞 舞台,从库中 中拖出一个下雪特效影 影片剪辑实例,放置在 在舞台的左上 上角。可以 以通过属性面 面板 输入 入坐标调整 整。
到此, 绘画 画, 以及搭建 建结果工作 作就完成了。 先制作了一个雪花的 的模型, 然后 后创建了一 一个下雪特效 效, 在下 下雪特效里面放了一个 个雪花,用来 来提示下雪 雪特效的位置 置。最后在 在主舞台的左 左上角放置 置了一个下雪 雪的 特效 效用于测试 试。
2.4 4 编写下雪 雪特效脚本 本
在库中双 双击下雪特效 效打开下雪 雪特效影片剪 剪辑。点击 击动作层第 1 帧。按 F F9 开始输入 入脚本。 首先我们要隐藏提示 示元件(Tip p_mc) ,这来自百度文库这个提示只是 是在做动画 画的时候提供 供提示功能 能。在播放的 的时 候要 要隐藏它。输入以下脚 脚本: Tip_mc. ._visible e = false e; //将 Ti ip_mc 元件 件的可视属性 性 (_visib ble) 设置为 为否 (fals se) , 即不 不显示。 建立环境因素 素,都是以变量的形式 式存在的。 接下来建
} 设置一个 个循环函数来 来创建雪花 花,循环次数 数(SnowN Num)即为 为雪花的数量 量。attachMovie 函数 数是 根据 据标识符从 从库中复制实 实例到舞台上,这个例 例子中的复 复制的是标识 识符为“Sn now”的实 实例到下雪特 特效 影片 片剪辑中。具体 attachMovie 用法可以参考 考 Flash 帮助。 到此雪花 花特效的场景 景脚本就完 完成了,全部 部脚本如下 下,写在动作 作层的第 1 帧。 Tip_mc. ._visible e = fals se; var Hei ight:Numb ber = 40 00; var Wid dth:Numbe er = 550 0; var Ang gularSpee ed:Numbe er = 5; var Win nd:Number r = -2; var XSp peed:Numb ber = 1; ; var YSp peed:Numb ber = 2; ; var Rat teOfChang geDirect tion:Number = 1/ /36; var A:N Number = 60; var B:N Number = 60; var Sno owNum:Num mber = 100; 1 var i:N Number; for(i=1 1; i<=Sno owNum; i++){ i attac chMovie( ("Snow"," "Snow"+i i+"_mc", this.ge etNextHighestDep pth()); }
的后 后面,那么在 在播放的时 时候只需要让它位于雪 雪景影片剪辑上就可以 以挡住下雪 雪场景了。而 而“提示”影 影片 剪辑 辑将告诉制作的人雪花 花场景的位 位置,它在播 播放的时候 候会隐藏起来 来。 “雪花” ”影片剪辑 辑就是下落的 的雪 花,这个会有 有很多。
2.2 2 动画原理 理
在下雪场景影片剪辑 辑中包含了下雪特效的 的环境因素 素,都作为变 变量存在,可 可以更改这 这些变量来调 调整 下雪 雪效果。而雪花则读取 取这些环境 境因素来调整 整“自己” 。最终实 实现下雪的特 特效。
退出 Sno ow 元件,回 回到主舞台。菜单栏上 上选择【插 插入】→【新 新建元件】 。 。名称输入 入下雪特效,类 型选 选择【影片剪辑】 。如图:
单击【确定】进入下 下雪特效元件 件。建立 2 个层。如图。其中在 在提示层放置 置提示元件 件,在动作层 层编 写脚 脚本。
从库中拖 拖出一个 Snow 放在提 提示层的中心 心。点击这 这个 Snow 实例,按 实 Ctrl+F3 打开 开属性面板, ,名 称栏 栏里输入“Tip_mc” 。
var XSp peed:Numb ber = 1; ;//水平速度,雪花水 水平飘动的速度。 var YSp peed:Numb ber = 2; ;//垂直速度,雪花下 下落的速度。 var Rat teOfChang geDirect tion:Number = 1/ /36;//随机 机飘动概率 率,雪花横向飘动时改 改变 方向 向的概率。 var A:N Number = 60;//雪花比例大小 雪 小跨度。 var B:N Number = 60;//雪花整体大小 雪 小。 场景高度和场景宽度 度用来设置 置雪花特效的 的范围,这里 里和舞台保 保持一致。雪 雪花角速度 度用来调整雪 雪花 的旋 旋转速度,实例中雪花 花是一个圆形,因此没 没有旋转效果 果,可能有 有人把雪花画 画的很细致 致,那么就可 可以 看出 出雪花的旋转效果,数 数值越大旋转 转越快。雪 雪花的下落可 可以分解为 为横向的移动 动以及垂直 直的移动。风 风速 即是 是刮风的强度,大的数 数值可以很 很明显的看出 出雪花斜着 着落下来。水 水平速度即 即是雪花横向 向飘动的速 速度, 雪花 花有可能会 会想羽毛一样 样左右晃动 动的降下来, 那么这个速 速度即是控 控制晃动的幅度, 赋值 值 0 将使雪花 花笔 直的 的落下(风 风速也为 0) 。垂直速度 度即为雪花的下落速度 度。随机飘动 动概率是雪 雪花横向飘动时改变方 方向 的概 概率,雪花横 横向飘动时 时会随机的改变横向的 的方向,这个 个数字即是 是改变的概率 率。改变在 在每帧都会执 执行 一次 次, 1/36 的概 概率即是平 平均每 36 帧变化一次 帧 次, 结合动画 画的帧频是 36fps, 即平 平均每秒变 变化一次方向 向。 赋值 值 0 雪花将 将不会改变飘 飘动方向。这个数字不 不宜过大,如果赋值 1 则雪花将 将每次都会改 改变方向,会 发现 现雪花是“颤抖”落下 下的。A 和 B 用来控制 制雪花的大小 小,雪花是 是随机控制大 大小的,其 其与原样本的 的计 算公 公式为:比例 = A×随 随机数+B。随机数的范 范围是 0~1 1。A 即为随 随机比例的 的跨度,B 为最小的比 为 比例。 A 越大,大小雪 越 雪花的跨度 度会很大,赋 赋值 0 则所 所有雪花同一个大小。B 是最小的雪花的大 大小,B 赋值 值越 大,雪花平均大小就越大 大。 通过以上 上就建立了完 完整的环境 境因素,可以 以看到雪花受 受到很多因 因素的影响,这些因素 素怎么影响雪 雪花 的飘 飘落将放在雪花影片剪 剪辑的脚本 本中。最后,在这个特 特效中加上一 一些雪花吧 吧! var Sno owNum:Num mber = 100;// 1 雪花 花数量 var i:N Number;// /循环变量 量 for(i=1 1; i<=Sno owNum; i++){ i attac chMovie( ("Snow"," "Snow"+i i+"_mc", this.ge etNextHighestDep pth());//创 建雪 雪花
完整 整的变量定 定义格式:var 初 v 变量名:类型 = 初始值 ;
var Hei ight:Numb ber = 40 00; //场景 景高度,即 即雪花下落的 的距离。例 例子中跟舞台 台保持一致 致。 var Wid dth:Numbe er = 550 0;//场景宽 宽度,即雪 雪花横向的跨 跨度。例子 子中跟舞台保 保持一致。 var Ang gularSpee ed:Numbe er = 5;//雪花旋转 转角速度。 var Win nd:Number r = -2;/ //风速,负 负值表示向左 左吹,正值 值表示向右吹,数值越 越大风越大。
Flash 特效之雪花飘落
作者:Toso_wind
1.简述
众多喜欢 Flash 的朋 朋友都有这样的情况, 无论是自己 己做动画还 还是做 Flash 贺卡都需 需要一个下雪 雪的 场景 景。 本文将从 从 ActionScript 出发, 制作逼真的 的下雪场景方 方法。 可能 能有人一看到 到 ActionSc cript 介绍一种制 就头 头大了。那么本文介绍 绍的也是一些很简单的 的 ActionSc cript 脚本,可以很容易 易的学会。而且我将对 对脚 本的 的每一句做 做出解释,可 可以用来学 学习简单的 ActionScrip A pt 脚本。 这个下雪建立了一个 个简单的环 环境因素机制 制。雪花的下 下落以及飘 飘动受到环境各个因素 素的控制。当 当你 看完 完真个制作过程以后将 将看到 ActionScript 将做出强大 将 的下雪效果 果, 修改环境 境因素的值 值可以适应很 很多 下雪 雪场景的要求。同时在 在动画中也可以动态的 的修改这些值,产生更 更加逼真的下 下雪场景( (比如下雪时 时候 突然 然刮起风) 。 如果你并 并不关心其中 中的原理而 而只想做出这 这个下雪的 的特效的话直 直接跳到制 制作过程的第 第 3 步制作 作影 片剪 剪辑,然后复制第 4 步和第 步 5 步最后紫色字 步 字体给出的 的脚本到相应 应位置,或 或者直接下载 载本 PDF 文档 文 在附 附件中找到本素材。 开始吧!
单击【确定】进入 Snow S 元件。建立 2 个层。如图 个 图形层绘画雪 雪花的图形 形,在动作层 层编 。其中在图 写脚 脚本。
选择图形层,画一个 个雪花,注意 意雪花的中 中心要和元件 件的中心重 重合。本例中 中画了一个 个渐变的圆,颜 色为 为白色,不透明度在圆 圆心为 100%,最外围 围为 0%。