• pv3D 作业 - [flash 3D]

    2008-02-11

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://asfox.blogbus.com/logs/15213396.html


    //============== main ====================
    package{
       import flash.display.Sprite;
       import flash.events.Event;
       import flash.text.TextField;
       import org.papervision3d.cameras.*;
       import org.papervision3d.materials.*;
       import org.papervision3d.objects.*;
       import org.papervision3d.scenes.*;
      
       public class main extends Sprite{
      private var container:Sprite;
      private var scene:Scene3D;
      private var camera:Camera3D;
      private var bm:BitmapAssetMaterial;
      private var box:Cube;
     
      public function main(){
       __init();
       __initEvt();
      }
      private function __init():void{
       container=new Sprite();
       addChild(container);
       container.x=stage.stageWidth*0.5;
       container.y=stage.stageHeight*0.5;
      
       scene=new Scene3D(container);
       camera=new Camera3D();
       camera.zoom=5;
       bm=new BitmapAssetMaterial("Hasi");
       bm.smooth=true;
       box=new Cube(bm,600,300,450,3,3,3);
       scene.addChild(box);
       box.x=0;
       box.y=0;
       box.z=0;
      }
      private function __initEvt():void{
      
       addEventListener(Event.ENTER_FRAME,__render);
     }
     private function __render(evt:Event):void{
      box.rotationY+=(stage.mouseX-stage.stageWidth>>1)>>5;
      box.rotationX+=(stage.mouseX-stage.stageWidth>>1)>>5;
      box.rotationZ+=(stage.mouseY-stage.stageHeight>>1)>>5;
        
      scene.renderCamera(camera);
     }
      }
    }

    收藏到:Del.icio.us