Forked from: mtok's Sample of ParticleField diff:9 forked from: Sample of ParticleField 1/21 ... @author ... albatrus_jp forked:0favorite:2lines:60license : All rights reserved modified : 2010-01-21 23:57:09 Embed Tweet // forked from mtok's Sample of ParticleField package { import flash.display.Sprite; import flash.events.Event; import flash.display.StageAlign; import flash.display.StageScaleMode; import org.papervision3d.core.view.IView; import org.libspark.thread.Thread; import org.libspark.thread.EnterFrameThreadExecutor; /** * ... * @author ... */ public class Pv3d011 extends Sprite { private var _view:CustomView; public function Pv3d011() { addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } private function addedToStageHandler(e:Event):void { //ステージを左上の隅に揃えるよう指定します。 stage.align = StageAlign.TOP_LEFT; //Flash アプリケーションのサイズが固定され、Flash Player のウィンドウのサイズが変更された場合でも、サイズが維持されるように指定します。 stage.scaleMode = StageScaleMode.NO_SCALE; //1秒あたりのフレーム数で表されます。 stage.frameRate = 30; _view = new CustomView(); //下記関数を参考 addChild(_view); } } } import flash.display.Bitmap; import flash.display.Sprite; import flash.display.BitmapData; import flash.display.Loader; import flash.events.Event; import flash.net.URLRequest; import flash.system.ApplicationDomain; import flash.system.LoaderContext; import org.papervision3d.view.BasicView; import org.papervision3d.objects.special.ParticleField; import org.papervision3d.materials.special.ParticleMaterial; internal class CustomView extends BasicView { private var bmpData:BitmapData; private var pf:ParticleField; public function CustomView() { super(0, 0, true, true); buildScene(); //下記関数を参考、パーティクルをsceneに配置 startRendering(); //レンダリング addEventListener(Event.ENTER_FRAME, enterFrameHandler); } private function enterFrameHandler(e:Event):void { //下記で作成したパーティクル(四角形)を回転させている pf.rotationX += 1; pf.rotationY += 1; } protected function buildScene():void { var mf:ParticleMaterial = new ParticleMaterial(0x0000ff, 1); pf = new ParticleField(mf, 1000, 5, 1000, 1000, 1000); scene.addChild(pf); camera.x = 0; camera.y = 0; camera.z = -200; } } Code Fullscreen Preview Fullscreen bradsedito xor startRendering rotationY rotationX addEventListener Event.ADDED_TO_STAGE addChild Event Event.ENTER_FRAME