PerlinNoise の引数をわかりやすくまとまる
/////////////////////////////////////
PerlinNoise の引数をわかりやすくまとまる
下部 enterFrameH 内
BitmapData.perlinNoise(
64,//-----------------/ 1 : X周波数 : int
64,//-----------------/ 2 : Y周波数 : int
2,//------------------/ 3 : レイヤー枚数 :int
100,//----------------/ 4 : 波動の乱れのダイナミクス : int
true,//--------------- / 5 : タイリング用に上下と左右をつなぐ ?
true,//--------------- / 6 : フラクタルノイズ?
(1 | 1 | 8 | 1),//---------/ 7 : カラーチャンネルをビットで指定 : ( 0x01R | 0x02 G | 0x04 B | 0x08 Alpha )
true,//--------------- / 8 : グレイスケール?
offset//-------------- / 9 : 各レイヤーをスクロールするためのPoint型の配列
);
※ ちなみに第5引数のタイリング、最初のフレームでしか効かないです。研究中。
※ 以下のページ、とってもわかりやすいです。
にゃあプロジェクト - ウェブログ - BitmapDataでノイズ生成 (2):
http://www.project-nya.jp/modules/weblog/details.php?blog_id=478
/////////////////////////////////////
/**
* Copyright mi77 ( http://wonderfl.net/user/mi77 )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/xHXy
*/
/*
/////////////////////////////////////
PerlinNoise の引数をわかりやすくまとまる
下部 enterFrameH 内
BitmapData.perlinNoise(
64,//-----------------/ 1 : X周波数 : int
64,//-----------------/ 2 : Y周波数 : int
2,//------------------/ 3 : レイヤー枚数 :int
100,//----------------/ 4 : 波動の乱れのダイナミクス : int
true,//--------------- / 5 : タイリング用に上下と左右をつなぐ ?
true,//--------------- / 6 : フラクタルノイズ?
(1 | 1 | 8 | 1),//---------/ 7 : カラーチャンネルをビットで指定 : ( 0x01R | 0x02 G | 0x04 B | 0x08 Alpha )
true,//--------------- / 8 : グレイスケール?
offset//-------------- / 9 : 各レイヤーをスクロールするためのPoint型の配列
);
※ ちなみに第5引数のタイリング、最初のフレームでしか効かないです。研究中。
※ 以下のページ、とってもわかりやすいです。
にゃあプロジェクト - ウェブログ - BitmapDataでノイズ生成 (2):
http://www.project-nya.jp/modules/weblog/details.php?blog_id=478
/////////////////////////////////////
*/
package
{
////////////////////////////////////////////////////////////////////////////////// ラップれです
import flash.display.Sprite;
import org.libspark.thread.Thread;
import org.libspark.thread.EnterFrameThreadExecutor;
[SWF(frameRate = 20, width = 465, height = 465, backgroundColor = 0x000000)]
public class Wrap extends Sprite
{
private var t:MainThread;
public function Wrap()
{
if (!Thread.isReady)
{
Thread.initialize(new EnterFrameThreadExecutor());//Thread・ス・ス・ス・ス
}
t = new MainThread(this);
t.start();
}
}
//////////////////////////////////////////////////////////////////////////////////
}
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import flash.filters.*;
import org.libspark.thread.Thread;
import caurina.transitions.Tweener;
import caurina.transitions.properties.ColorShortcuts; ColorShortcuts.init();
import caurina.transitions.properties.FilterShortcuts; FilterShortcuts.init();
internal class MainThread extends Thread
{
private var main:Sprite;
private var sp:Sprite;
private var bmps:Object;
private var bmds:Object;
private var offset:Object;
private const size:int=128;
private var i:int;
public function MainThread(main:Sprite)
{
this.main = main;
}
override protected function run():void
{
sp = new Sprite();
main.addChild(sp);
sp.x = 156;
sp.y = 156;
//
bmds = [];
bmps = [];
bmds[0] = new BitmapData(size,size);
bmps[0] = new Bitmap(bmds[0]);
//bmps[1] = new Bitmap(bmds[0]);
//bmps[2] = new Bitmap(bmds[0]);
//bmps[3] = new Bitmap(bmds[0]);
sp.addChild(bmps[0]);
//sp.addChild(bmps[1]);bmps[1].x = size;
//sp.addChild(bmps[2]);bmps[2].y = size;
//sp.addChild(bmps[3]);bmps[3].y = size;
//sp.addChild(bmps[3]);bmps[3].x = size;
//
initNoiz();
sp.addEventListener(Event.ENTER_FRAME, enterFrameH);
}
private function initNoiz():void
{
offset = [new Point(0, 0), new Point(0, 0)];
offset[0].x = 0;
offset[0].y = 0;
offset[1].x = 0;
offset[1].y = 0;
}
public function enterFrameH(e:Event):void
{
offset[0].x += 2;
offset[0].y += 2;
offset[1].x += 4;
offset[1].y += 4;
bmds[0].perlinNoise(
64,//-----------------/ 1 : X周波数 : int
64,//-----------------/ 2 : Y周波数 : int
2,//------------------/ 3 : レイヤー枚数 :int
100,//----------------/ 4 : 波動の乱れのダイナミクス : int
true,//--------------- / 5 : タイリング用に上下と左右をつなぐ ?
true,//--------------- / 6 : フラクタルノイズ?
(2 | 4 | 8 | 1),//---------/ 7 : カラーチャンネルをビットで指定 : ( 0x01R | 0x02 G | 0x04 B | 0x08 Alpha )
false,//--------------- / 8 : グレイスケール?
offset//-------------- / 9 : 各レイヤーをスクロールするためのPoint型の配列
);
i++;
}
override protected function finalize():void
{
//
}
}