[ActionScript 3.0] AS3.0 烟雾粒子效果
package {
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Point;
[SWF(width="500",height="400")]
public class SmokeFog extends Sprite {
private var vectormap:BitmapData;
private var bmpdata:BitmapData;
private var oy:int = 0;
private var w:int;
public function SmokeFog(){
w = 200;
vectormap = new BitmapData(w, w);
bmpdata = new BitmapData(w, w, false, 0);
addChild(new Bitmap(bmpdata));
stage.addEventListener(Event.ENTER_FRAME, reset);
}
private function reset(e:Event):void {
vectormap.perlinNoise(w * .5, w * .5, 3, 1, false, true, 7, false, [new Point(0, oy++)]);
bmpdata.fillRect(bmpdata.rect, 0);
for (var y:int = 0; y < vectormap.height; y++){
for (var x:int = 0; x < vectormap.width; x++){
var px:uint = vectormap.getPixel(x, y);
var r:int = px >> 16 & 0xFF;
var g:int = px >> 8 & 0xFF;
var b:int = px & 0xFF;
var tx:int = x + (g / 0xFF - .5) * w;
var ty:int = y + (b / 0xFF - .5) * w;
if (ty < 0 || ty >= bmpdata.height || tx < 0 || tx >= bmpdata.width)
continue;
var col:uint = bmpdata.getPixel(tx, ty);
col += 0x010101 * (int)(r * .2);
if (col > 0xFFFFFF)
col = 0xFFFFFF;
bmpdata.setPixel(tx, ty, col);
}
}
}
}
}
[ActionScript 3.0] AS3.0 烟雾粒子效果的更多相关文章
- [ActionScript 3.0] AS3.0 下雨及涟漪效果
帧代码: stage.frameRate = 80; function init(x1:Number,y1:Number) { var mc:MovieClip=new MovieClip(); ad ...
- [ActionScript 3.0] AS3.0和AS2.0的相互通信
AS3和AS2之间的通信,最好的方式可能就是LocalConnection了. AS2向AS3发送数据,即AS2调用AS3的函数: as2.0代码(按钮上写的发送信息代码): on (release) ...
- [ActionScript 3.0] AS3.0 让一个视频无缝循环播放的一个偏方
一个视频要循环播放,通常的办法都是播放完后再重新播放,但是不可避免的播放结束和重新开始播放这个时间点上会有停顿,如何解决这个问题,说个偏方吧! package com.views { import f ...
- [ActionScript 3.0] AS3.0 水面波纹效果
import flash.geom.Point; import flash.display.BitmapData; import flash.filters.DisplacementMapFilter ...
- [ActionScript 3.0] AS3.0 马赛克效果
var bmpd:BitmapData; var matrix:Matrix; var bmp:Bitmap; var size:Number = 5; /** * @author:Frost.Yen ...
- [ActionScript 3.0] AS3.0 把图片分析成文本表现形式
PLP%uffs??1ti4b5I3iI5CMMGGE8Ta8?c8[mm3CF9sLaXZDll6kpjmhGmhE$GONEENhhGl6OWXb9lkNk0kkNpklZW6&bDN0q ...
- [ActionScript 3.0] AS3.0 本机鼠标指针
Flash Player 10.2添加了内置的本机鼠标指针(native mouse cursor)支持,虽然在之前的版本里我们可以侦听MouseEvent事件来模拟鼠标指针,但是在有了原生的本机鼠标 ...
- [ActionScript 3.0] AS3.0 动态加载显示内容
可以将下列任何外部显示资源加载到 ActionScript 3.0 应用程序中: 在 ActionScript 3.0 中创作的 SWF 文件 — 此文件可以是 Sprite.MovieClip 或扩 ...
- [ActionScript 3.0] AS3.0 对象在一定范围随机显示不重叠
import flash.geom.Rectangle; import flash.display.MovieClip; import flash.display.Sprite; var arr:Ar ...
随机推荐
- QML的一些基础的区分
什么时候用Item什么时候用Rectangle? 什么时候用Row什么时候用RowLayout? 这2个问题经常会让人迷糊. 什么时候用Item,就是你要做一个组件,这个组件是一个复合的组件,组件有部 ...
- PHP中file_put_contents追加时换行
很多时候记录日志需要换行.不建议使用\r\n,因为:在windows中\r\n是换行在Mac中\r是换行在Liunx中\n是换行 但是PHP提供了一个常量来匹配不同的操作系统,即: file_put_ ...
- Oracle中TO_DATE用法
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 yyy three digits 三位年 显示值:007 yyy ...
- CodeForces 688C-NP-Hard Problem
题意: 给你一个无向图,判断是否能够构成一个二分图,如果能的话,输出二分图左边的集合和右边的集合 分析: 先给每一个顶点的color初始化-1,表示没有被染色,用vector数组v[a],表示元素a所 ...
- C语言实现双向循环链表
#include <stdio.h> #include <stdlib.h> #include <string.h> struct list_head { stru ...
- Java基础小总结
1,Java事件处理机制 (1)三部分:事件源.事件(处理)对象.实现事件监听器: (2)事件处理程序:可以通过ActionEvent e,e.getSource确定是哪个事件触发了,然后通过类似JB ...
- 传智博客.NET培训第13季 Ajax教程(共十三季) 学习资源
http://wangpengnimei.ctfile.com/u/1235801/47146 传智博客.NET培训第13季 Ajax教程(十三季).rar 19
- Golang Clearing slice
//first method : slice = nil // second method : slice = slice[0:0] Source page : https://www.socketl ...
- UITableView 接口的调用顺序
ios7启用estimatedHeightForRowAtIndexPath之后的api调用顺序called -[XHYTableViewController tableView:heightForR ...
- python windows终端窗口下输出编码错误
windows简体中文版下终端默认字符集gbk,执行chcp 65001临时修改字符集. 修改默认字符集:注册表HKEY_CURRENT_USER\Console项中CodePage值修改为65001