Flash视觉特效之时空穿梭
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-10
本例实现的是在浩瀚宇宙中,无数星辰匆匆而过的效果。该例实现方法简单,效果眩目,也很有实用价值。譬如,在实例中放上一架战舰,会产生飞机快速运动的效果。相信本例一定能为您的作品增色不少,或是给您什么启发的。 源文件下载:点击这里下载(3K, zip压缩文件) 预览效果:点击这里预览 下面我们就开始具体地制作。 1.?打开FlashMX,设置场景的大小为450px X 450px,黑色背景。帧频为15fps。 2.?按快捷键“Ctrl+F8”打开“创建新符号”面板,创建一个名为“流星”的图形符号。接着在“流星”符号的场景里绘制一个如图1所示的流星状物体,其宽、高度分别为3 px、100 px。绘制时可以把该流星体分为几段,分别着上不同的颜色,则更能体现出流动的视觉效果。 3.?按快捷键“Ctrl+F8”创建一个名为“流星雨”的影片剪辑符号。然后在“流星雨”符号的场景里把“图层一”层改名为“动画”层。接着按快捷键“Ctrl+L”打开库,把库中的图形符号“流星”拖拽到“动画”层的场景中。 图1 图2 4.?点选“动画”层第1帧中的“流星”,按快捷键“Ctrl+T”打开“变形”面板并进行如图2所示的设置。 5.?右键单击“动画”层的第一帧并选择“创建补间动画”命令创建补间动画。接着分别点击选中该层的第12、22、30、36、42、45帧并按“F6”键插入关键帧。如图3所示。 ? 图3 6.?如图3所示,再点选中第46帧,按“F7”键插入空白关键帧。接着右键点击该空白帧,选择弹出菜单中的“动作”命令,在打开的“动作”面板中输入代码:“stop;”。见图3。 7.?点选中第12帧中的“流星”,打开“变形”面板把其宽和高的缩放比例设置为55%和6%,并把它向上移动20个像素。然后再把20帧中“流星”的宽和高的放大一点,并也向上移动一定的像素。第30、36...帧以此类推。这样,当“流星”离我们越近时,它看上去就会更大,运动的速度也会越来越快。? 8.?回到主场景,打开库,把库中的影片剪辑符号“流星雨”拖到主场景中。然后点选中场景中的“流星雨”,在其属性面板中给它起个实体名为“meteor”,如图4所示。 图4 9.?右键点击主场景中的第1帧,选择弹出菜单中的“动作”命令,在打开的“动作”面板中输入如下代码: // 定义函数“spacetime()”,其中作用是复制影片,并对影片的角度、透明度属性进行随机设置 function spacetime() { // i是被复制影片剪辑的唯一深度(层次),深度是复制的影片剪辑的堆叠顺序 // 如果变量“i”大于300,就重新设定其值为0 ??? if (i>300) i = 0; ??? i++; // 语句duplicateMovieClip()的功能是复制影片剪辑 ??? duplicateMovieClip("meteor", "meteor" add i, i); // _rotation是角度属性、_alpha是透明度属性 // 函数random()可以返回在0和value参数之间的一个随机整数 ??? this["meteor" add i]._rotation = random(360); ??? this["meteor" add i]._alpha = Math.random()*30+30; } // 语句setInterval()可以每隔一段时间间隔就调用一次函数、方法或是象,单位是毫秒 setInterval(spacetime, 10); 好了,效果到这里就制作完成,可以进行测试了。 最后,还有几点笔者要请大家注意。首先就是代码中语句“if (i>500) i = 0;”这种用法是可以的,如果切换回普通模式,您会发现系统会自动为语句添加上“{}”和缩进。另外,random()函数在Flash5中就已经不建议使用了。建议使用Math对象中的random()方法替代。该方法返回一个0到1之间的一个数。譬如可以使用语句Math.random()*360进行替换。 就本效果而言如果您把360中的“0”给去掉,或是再“摇晃摇晃”,那效果……,嘿嘿,有兴趣的读者可以自己试试。 |
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash运动方法与技术剖析下一篇: Flash教程实例:水中浮动的文字
关于Flash视觉特效之时空穿梭的所有评论