用Flash表现雷电的几种方法
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-14
这是闪电特性的反映,这是闪电的真正集合。那么我们需要如何来安排呢?如何来构造呢?在此过程中我们需要注意到什么内容,什么细节呢?带着一堆的问题我们开始我们的闪速Flash案例进程。 让人叹为观止的是,在此实例中我们仅仅只用到了一个MC就实现了让人晕旋的效果,如下图7所示: ? 图8超自然闪电的库内容图 我们可以从Library库文件的缩略图中看到Light(MC)只是一根短短的小短柱,如果是你你会想到用它能做出闪电的特效吗? :) 其实我们只要利用Flash的ActionScript的复制MC命令就可以将小短柱串连成一道道夺目的光芒。 ? 图9超自然闪电的主场景内容图 现在让我们再来检查一下闪电在Flash主场景内的大致情况,如上图8所示,让我们跌破眼镜的是,在主场内我们也没有什么复杂的内容,只是简简单单的两层(AS层及Light层)。我们将Library中的Light(MC)拖至主场景内,并赋于实体名为basic于此MC,再接下来的工作看来就得完全的交给Flash来完成了。 让我们先来查看一下AS层中第一帧的代码内容吧: heightstart = 10; heightrange = 50; anglestart = -80; anglerange = 160; setProperty ("basic", _visible, false); 让我们稍为分析上述的代码,很容易我们就得出如下结论,利用这几行代码我们初始化了闪电的一些属性。如:heightstar高度开始的值,heightrange高度结束的值,anglestart角度开始的值,anglerange角度结束的值,最为设置basic(闪电)的可见性为否,稍后我们将再补充讲述它们的功能。 然后,当我们查看AS层第二帧内容的时候会发现略有些头晕,当然只是代码行略多了几句而已啦,嘻嘻。 //设设置循环变量I并付初值为1 i = 1; //设置当前X与Y的起始值 currentx = 300; currenty = 0; //建立循环 do { //循环变量的递增 i = i+1; //设置heightoffset与angleoffset的随机变化范围 heightoffset = random(heightrange)+heightstart; angleoffset = random(anglerange)+anglestart; //创建新对象名称 newobj = "basic" add i; //复制对象basic(闪电) duplicateMovieClip ("basic", newobj, i); //注:其实上面的两句可合并为一行代码duplicateMovieClip("basic" , "basic" add I, I); //以下几行设置了新对象的X、Y、高度、旋转解度、缩放的范围 setProperty (newobj, _x, currentx); setProperty (newobj, _y, currenty); setProperty (newobj, _height, heightoffset); setProperty (newobj, _rotation, angleoffset); setProperty (newobj, _xscale, 100-5*i); //计算当前X、Y坐标值 currentx = currentx-(Math.sin(angleoffset*3.14/180))*heightoffset*.7; currenty = currenty+(Math.cos(angleoffset*3.14/180))*heightoffset*.7; } while (i<20); 至此应当说我们已经基本完成了该“超自然闪电”的制作过程了,为了加深大家对它的理解让我们再讲述一下它的创作基理。 很明显,我们就是通过对于实例对象MC的复制,然后通过改变复制出来的新的对象的起始位置、长度、旋转角度及缩放层度来达到目标所要求的效果,在这里我们需要注意的是每个被创建的新对象之间需要比较好的“衔接”起来才能让闪电更为的逼真,否则我们的闪电则会变成“断电”了。因而我们希望大家自己能够需要花点时间去理解一下最后两行代码 currentx及currenty计算出的值的作用,或许大家可以利用trace出相应的值再来确认一下你们对这两个值的看法。原文件下载学习 创造性的逼真闪电 当我们完成了“超自然闪电”以后或许会发现,它确实很绚,却总感觉确实七分的真实,很直观的,它与现实中的闪电“一闪而过” |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 用动作脚本动态创建和控制文本框下一篇: 全能Flash工具:FlashToolSet
关于用Flash表现雷电的几种方法的所有评论