当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > AtionScrip 3.0制作雪花飘飘动画

ActionScript
Flash AS特效:超绚丽的闪字动画
Flash游戏开发教程:第四节
Flash组件教程:组件动画效果的修改
Flash Actionscript常用的几段代码
彻底消灭Flash动画中的乱码
Flash游戏开发教程:第三节
mc深度的排序值设置方法
Flash as简单制作鼠标跟随文字动画
Flash游戏开发教程:第二节
Flash Actionscript 优化指南
Flash游戏开发教程:第八节
ActionScript的API文档生成工具ASDoc
Flash游戏开发教程:第七节
Flash AS教程:蝌蚪摆尾动画
Flash AS3教程:汉字转拼音
Flash游戏开发教程:第五节
Flash游戏开发教程:第六节
Flash AS3教程:下雪动画效果
Flash as教程:文字散射效果
Flash编写类及外部as文件的方式

ActionScript 中的 AtionScrip 3.0制作雪花飘飘动画


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-01   浏览: 182 ::
收藏到网摘: n/a

本例为用Flash AtionScrip 3.0制作雪花飘飘的雪景效果,常常从网上的动画中看到大雪纷飞的场面,看到雪花从天空中拖曳而下,真有一种身临其境的感觉呢?但主要是用AtionScrip 2.0制作,现在我们用AtionScrip 3.0来制作雪景效果。

效果演示:

一、制作雪花元件

1、打开 Flash9.0,新建Flash文档选择AtionScrip 3.0。背景色为深蓝,舞台大小为 550×400。然后按下 Ctrl+F8,新建一个影片剪辑元件“雪花”,进入到“雪花”元件编辑状态后,图层1改为“雪花层”用椭圆工具在舞台上拖曳出一个大约 2×2 像素无笔触纯白色的圆来,然后放大到 800%,用选择工具在边缘处随便拉动,使其变成不规则的形状,最后选中这个图形,打开【修改】-【形状】-【柔化填充边缘】,调出“柔化填充边缘”对话框,在“距离”项中填入 5px,“步骤数”为5,“方向”为“扩展”,完成后尺寸大约为 7.5×7 像素,全选图形右键转为影片剪辑元件“静态雪花”。如图 1(放大为 800%的效果)。

AtionScrip 3.0制作雪花飘飘动画_RuanChen.Com

2、在影片剪辑“雪花”元件“雪花层”图层的第80帧上插入关键帧,然后在第二层“添加运动引导层”,舞台缩小到50%,用铅笔画从上至下画一条运动线,第80帧处插入帧,上锁。选中“雪花”图层图第80帧上“静态雪花”元件拖曳到运动线的下端,选中“雪花”层创建补间动画。如图2

AtionScrip 3.0制作雪花飘飘动画_RuanChen.Com

然后在库中用右键点击“雪花”元件,选择“链接”项,给其添加标识符为“xh_mc”。

二、制作背景

回到场景 1 中来,选择【文件】-【导入】-【导入到舞台】,从自己的磁盘中选择一张雪景图片,选中图片,把它设置为550x400,全居中,同时把图层 1 更名为“背景”。
三、新建一个图层“AS” ,点中第 1帧,打开“动作”面板,添加下列代码:
Var sj:Timer=new Timer(Math.random()*300+100,100);
//声明一个时间变量,类型Timer,随机设置时间间隔和控制雪花数量;
sj.addEventListener(TimerEvent.TIMER ,sjcd);
//用sj来侦听时间事件;
function sjcd(event:TimerEvent) {
//声明一个sjcd函数
var xh:xh_mc=new xh_mc();
//先声明一个对象xh,类型xh_mc,等于一种新类型xh_mc;
addChild(xh);
//把新声明的xh对象显示到舞台上;
xh.x=Math.random()*550;
//雪花x坐标在550舞台上随机出现;
xh.y=Math.random()*200;
//雪花y坐标控制在舞台上的0-200处随机出现;
xh.alpha=Math.random()*1+0.2;
//雪花的随机透明度;
xh.scaleX=Math.random()*0.5+0.5;
//随机控制雪花在x的宽度;
xh.scaleY=Math.random()*0.5+0.5;
//随机控制雪花在y的宽度;
}
sj.start();//时间开始;

雪景代码:

var sj:Timer =new Timer(Math.random()*300+100,100);
sj.addEventListener(TimerEvent.TIMER ,sjcd);
function sjcd(event:TimerEvent) {
var xh:xh_mc=new xh_mc();
addChild(xh);
xh.x=Math.random()*550;
xh.y=Math.random()*200;
xh.alpha=Math.random()*1+0.2;
xh.scaleX=Math.random()*0.5+0.5;
xh.scaleY=Math.random()*0.5+0.5;
}
sj.start();

四、关闭动作窗口测试保存。