FLiNT Examples -> Gravity Wells を参考にした。
org.flintparticles.twoD.actions.GravityWell public function GravityWell(power:Number, x:Number, y:Number, epsilon:Number = 100) |
重力発生装置のように使えるのかも。
パワー、位置を指定する。
6000個のインスタンスをBlurFilterをかけて動かしている。
恐るべき実力。
どの Class を使うと何ができるか把握するのが大変そう。
import org.flintparticles.common.counters.*; import org.flintparticles.common.initializers.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.emitters.Emitter2D; import org.flintparticles.twoD.initializers.*; import org.flintparticles.twoD.renderers.*; import org.flintparticles.twoD.zones.*; var emitter:Emitter2D = new Emitter2D(); emitter.counter = new Blast( 6000 ); emitter.addInitializer( new ColorInit( 0xFFff6600, 0xFFfff633 ) ); emitter.addInitializer( new Position( new DiscZone( new Point( 200, 200 ), 200, 150 ) ) ); emitter.addAction( new Move() ); emitter.addAction( new GravityWell( 30, 200, 200 ) ); emitter.addAction( new GravityWell( 30, 100, 100 ) ); emitter.addAction( new GravityWell( 30, 300, 300 ) ); var renderer:PixelRenderer = new PixelRenderer( new Rectangle( 0, 0, 400, 400 ) ); renderer.addFilter( new BlurFilter( 2, 2, 1 ) ); renderer.addFilter( new ColorMatrixFilter( [ 1,0,0,0,0 ,0,1,0,0,0 ,0,0,1,0,0 ,0,0,0,.96,0 ] ) ); renderer.addEmitter( emitter ); addChild( renderer ); emitter.start(); |