分站导航--->>>‖企业吧企业黄页网站导航免费信息友情链接竞价排名法律检索邮编查询在线黄历手机定位IP定位更多>>>
德佳网络资讯频道 加盟德佳网络企业吧!免费企业黄页注册
加入收藏
设为首页
免责声明
企业注册
主页
奥运 新闻 社会 百科 生活 家庭 奇闻 体坛 数码 彩信 摄影 设计 法制 电脑 科技 资源
 您当前位置:德佳网络 >>> 图文资讯频道 >>FLASH相关知识
用Flash制作鬼火效果
作者(德佳网络) 来自(德佳网络) 点击数(8)加入时间(2008-6-16)
将本文推荐给QQ/MSN好友:
本实例的火焰效果和一般的火焰效果不同,这里的火焰除了不停的抖动和伸缩外,还会不断的变化火焰的颜色,加上黑色的背景,给人一种神秘的感觉,看上去很象一些电影中的鬼火,是不是很恐怖哦,长话短说,下面我们就来学习其制作方法。

  首先启动Flash,新建一个大小为500px*400px,背景色为黑色的影片。

  既然制作的效果是火焰,自然少不了一个简单的火焰效果,然后通过Action的控制,就可以变化出变幻莫测的火焰来。所以新建一个Movie clip组件,命名为fires,进入组件的编辑状态后,使用椭圆工具绘制一个长条形的椭圆,使用箭头工具将椭圆的两个尖调整的细一点,然后使用颜料桶工具将其填充为黄色和黑色的线性填充色,如图1所示:



图1

  然后分别在图层layer1的第5桢和第8桢插入两个关键桢,回到第5关键桢,将此祯的椭园对象的长度调整的长一些,如图2所示:



图2

  分别建立第1关键桢到第5关键祯和第5关键桢到第8关键桢之间的Motion运动过渡效果,时间线如图3所示;



图3

  既然我们的这个火焰效果是可以变化颜色的,所以现在就来制作控制火焰颜色变化的Action控制代码。新建一个Movie clip,命名为color,进入组件的编辑状态后,在图层layer1的第1桢添加如下Action:

col = Random(0xafafaf)+0x999999;

//使用random随机函数取随机值,其中0xafafaf和0x999999为16进制数,16进制//数常用于颜色设置。Col变量接受产生的随机数

firecol = new Color(_root["fire"and i]);

ffcol = new color(_root.ff);

//定义两个color类的对象firecol和ffcol

firecol.setRGB( col );

ffcol.setRGB( firecol.getRGB()+0xfaff44 );

//两个color类的对象firecol和ffcol分别被设置了相应的颜色

  在图层layer1的第2桢添加如下Action:

col = col+0x0f0f0f;

//重新设置变量col的值

firecol.setRGB( col );

ffcol.setRGB( firecol.getRGB()+0xfaff44 );

//重新设置两个color类的对象firecol和ffcol的颜色值

  在图层layer1的第10桢添加如下Action:

gotoAndPlay(2);

//返回到第2桢

  这样,我们需要的所有组件就都准备好了,接下来就需要布置主场景了。

  回到主场景中,将组件fire从图库中拖到图层layer1中,并放置到舞台的合适位置,在属性面板中命名其为ff,然后将图层layer1延伸到第3桢,如图4所示:



图4

  新增一个图层layer2,将组件color拖到工作区的任意位置即可,因为组件layer2中没有任何图形对象,全部为Action控制代码,所以组件color放置到工作区时只能看到一个空的圆圈,说明这个是一个空的Movie clip.

再新增一个图层layer3,在第1桢添加如下Action控制代码:

if (i>10) {

i = 0;

}

i++;

duplicateMovieClip("/ff", "fire"and i, i);

setProperty("fire"and i, _x, _root.ff._x+Random(7)-3);

setProperty("fire"and i, _y, _root["fire"and (i-1)]._y-60*Math.pow(0.6,i));

setProperty("fire"and i, _xscale, Math.pow(0.95,i)*100);

setProperty("fire"and i, _yscale, Math.pow(1.05,i)*100);

//复制10个对象ff的副本,然后分别设置副本的坐标和缩放尺寸。

  在图层layer3的第3桢添加如下Action控制代码:

if (i>10) {

i = 0;

}

i++;

duplicateMovieClip("/ff", "fire"and i, i);

setProperty("fire"and i, _x, _root.ff._x+Random(7)-3);

setProperty("fire"and i, _y, _root["fire"and (i-1)]._y-60*Math.pow(0.55,i));

setProperty("fire"and i, _xscale, Math.pow(0.95,i)*100);

setProperty("fire"and i, _yscale, Math.pow(1.05,i)*100);

gotoAndPlay(1);

//上面的Action和第1桢中的完全相同,目的是重复执行这段代码。

  最后的时间线如图5所示:



图5

  本实例的最终效果如图6所示:



图6
相关分类
FLASH相关知识
动漫简介
FLASH作品
分类热门文章
·用flash打造爆炸效果
·用Flash制作鬼火效果
·用Flash做一个自己的个性MP3播放器
·FLASH制作百叶窗效果
·流行手法——水纹banner的制作
·flash中的常见术语
·讨论——关于Flash 程序的优化
·用Flash制作鬼火效果
·用flash制作文字的逐个缩放。
·Flash 3d效果精彩实例6
栏目相关文章
  • 关于Flash中linkage的loading问题2
  • 用FlashMX打造逼真打火机(二)
  • flash中的常见术语
  • 激光字效果
  • FLASH MX 2004右键菜单秀(1)
  • 文章搜索
    文章编号-102文章页数[1] 
    相关评论
    将本文推荐给QQ/MSN好友:
    餐饮住宿 医疗保健 家居装修 汽车超市 教育培训 文化体育 日用百货 灯饰照明 能源开发
    家用电器 农副食品 旅游观光 休闲娱乐 健身美容 社会福利 印刷包装 服装服饰 电脑it行业
    广告媒体 办公商务 五金交电 加工制造 机电设备 建筑工程 交通运输 绿化环保 电子工业
    专业服务 农林畜牧 金融投资 信息产业 专项事务 化工行业 行政事业 特种服务