陪你去看流星雨——虚拟星空的制作

陪你去看流星雨——虚拟星空的制作

许多人小时候都喜欢仰望星空数星星,长大后,又喜欢跟情人一起去看星星,“哇,流星耶~~!!”
在《电脑报》上有做星空的教程,不过那是用PhotoShop做出再拖到Flash中做成会闪的,而这里要讲的,是会移动的星群。因为大小、移动速度、透明度都不同,所以很有层次感哦。
(1)新建动画文件,因为这里需要的是制作网页的LOGO所以大小设置为245×60,底色为Black。新建一个Movie Clip (Ctrl + F8),取名Star(图1),这就是放星星的,也是本动画唯一的一个Symbol。


(2)在新建的Movie clip里面画一颗星星,这里用个实心圆圈代替(图2)。


(3)然后就是写脚本啦,在Movie clip里面新建一层,用来放脚本(图3),这个总共用了三帧。

 

第一帧:(图4)


ran = random (100) +random (10);//定义随机数,因为下面设置Movie clip大小时是以百分比计算的,所以这里设置变量为0-108。


setProperty ("", _x, 245); //设置一开始星星的X位置,245为动画的宽度,可根据动画大小而定。
setProperty ("", _y, random (60) +1); //设置一开始星星的Y位置,这样出来的星星才不会在一直线上。
setProperty ("", _xscale, ran); //设置MC大小,ran就是上面定义的变量。
setProperty ("", _yscale, ran) ;
setProperty ("", _alpha, random (50) +50); //设置MC透明值。
第二帧:
setProperty ("", _x, getProperty ("",_x )-ran/9); //递减X位置,让星星移动,这个位置的数值9越大移动速度越慢。
第三帧:
if (getProperty ("",_x ) <0) { //判断星星是否移动到动画外边了,是的话就返回第一帧重新移动。
gotoAndPlay (1);
} else {
gotoAndPlay (2);
}
(4)把“星星”拖到场景,并在“Instance”面板将它命名Star,如图5。
(5)设置星星的数量,其实也就是用到复制而已(图6),在场景中加入脚本(图7)。
starnum = 99; //“星星”的数量,别太大哦,不然占用很多资源的。
while (starnum>0) {
duplicateMovieClip ("/star", "star"&&starnum, starnum); //复制“星星”。
starnum = starnum -1;
}
stop ();
(6)检查一遍,然后Ctrl+Enter效果如何?
是否发现,从头到尾没用过“Tweening”哦,这正是Flash Action Script的魅力啦,也因为只用了脚本。所以产生的SWF文件只有502KB,很吃惊吧!

(Undine