当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > Flash AS3 快速制作烟雾动画

ActionScript
Flash教程:测试AS代码的执行速度
Flash AS教程:填色游戏的制作
FLASH CLASS的基本编写规范
flash教程:使用拆分数字和文字的函数
通过实例学习Flash AS3.0——案例六
用Flash AS制作逼真的下雨动画效果
通过实例学习Flash AS3.0——案例五
Flash CS3制作Fla形式的组件
通过实例学习Flash AS3.0——案例四
通过实例学习flash AS3.0——案例二
通过实例学习AS3.0——案例三
通过实例学习AS3.0
Flash AS3中数据发送与接收
Flash AS制作盛开的花朵视觉特效
新手来看:Flahs as入门教程
关于Flash层的深度处理问题
Flash AS制作控制图片大小的滑块效果
Flash AS2代码绘制的一棵漂亮的树
删除Flash右键菜单的两种方法
用Flash AS制作时钟(Date类)

ActionScript 中的 Flash AS3 快速制作烟雾动画


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

Flash AS3教程:快速制作烟雾动画,由于还要上传AS不给大家看效果了,本文最后提供源码压缩包下载,本教程主要利用AS3的类来实现。首先我们在Photoshop中制作一个烟雾的照片,这里主要使用Photoshop的画笔来实现。


之后我们导入到FLASH中来,然后转变为影片剪辑原件,命名为smokepuff。之后我们打开库,然后右击该元件,设置链接。
然后编辑类别,代码如下。 package com.asgamer.graphics
{

import flash.display.BlendMode;
import flash.display.MovieClip;
import flash.events.Event;

public class Smokepuff extends MovieClip
{

public var vx:Number;
public var vy:Number;

public function Smokepuff() : void
{
alpha = Math.random();
vx = Math.random() - Math.random();
vy = Math.random() * 3 - 5;
scaleX = scaleY = Math.random();
addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
}

private function loop(e:Event) : void
{
alpha -= 0.01;
y += vy;
x += vx;
scaleX = scaleY += 0.02;

if (alpha < 0)
removeSelf();
}

private function removeSelf() : void
{
removeEventListener(Event.ENTER_FRAME, loop);
parent.removeChild(this);
}

}

} 文档的属性为:

之后我们创建一个main.as package
{

import flash.display.Stage;
import flash.display.MovieClip;
import flash.events.Event;
import com.asgamer.graphics.Smokepuff;
import flash.display.Sprite;

public class Main extends Sprite
{

public function Main() : void
{
addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
}

private function loop(e:Event) : void
{
var smokepuff:Smokepuff = new Smokepuff();
smokepuff.x = 250;
smokepuff.y = 250;
stage.addChild(smokepuff);
}

}

} 测试效果。最后提供flash源码下载http://wt.ruanchen.com/00907/yuanma/flash_smokepuff.rar