スポンサーサイト

-------- | --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ActionScript 3.0] PaperVision3D 2.0 でのdaeファイルの表示

2007-12-18 | 20:19

package {
        import flash.display.Sprite;
        import flash.display.StageAlign;
        import flash.display.StageScaleMode;
        import flash.events.Event;
        
        import org.papervision3d.cameras.FreeCamera3D ;
        import org.papervision3d.lights.PointLight3D;
        import org.papervision3d.materials.*;
        import org.papervision3d.objects.*;
        import org.papervision3d.render.BasicRenderEngine;
        import org.papervision3d.scenes.Scene3D ;
        import org.papervision3d.view.Viewport3D;
        import org.papervision3d.objects.parsers.DAE;
        
        [SWF(backgroundColor="0xffffff", width="500", height="300", frameRate="30")]
        public class ColladaSample extends Sprite
        {
                private var renderer:BasicRenderEngine
                private var scene:Scene3D;
                private var camera:FreeCamera3D;
                private var viewport:Viewport3D;
                
                private var collada:DAE;
                
                // 3d Objects
                private var pointLight:PointLight3D;
                
                public function ColladaSample()
                {
                        stage.align = StageAlign.TOP_LEFT ;
                        stage.scaleMode = StageScaleMode.NO_SCALE;
                        
                        renderer = new BasicRenderEngine();
                        scene = new Scene3D();
                        camera = new FreeCamera3D();
                        viewport  = new Viewport3D(0, 0, true, false);
                        addChild(viewport);
                        
                        camera.z = -200;
                        camera.focus = 100;
                        camera.zoom = 4;
                        
                        collada = new DAE();
                        collada.load("tool.xml ");
                        scene.addChild(collada);
                        
                        stage.addEventListener(Event.ENTER_FRAME, handleEnterFrame);
                }
                
                private function handleEnterFrame(e:Event):void
                {
                        camera.x=camera.y=camera.z=0;
                        camera.yaw(.5);
                        camera.moveBackward(100);
                        camera.moveUp(10);
                        
                        renderer.renderScene(scene, camera, viewport);
                }
                
        }
}
daeファイルの拡張子をxmlにしているのは、ここのブログのチェックに引っ掛かるからだけの理由です。
スポンサーサイト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。