notice: Flash editor updated! Join the development! Thanks to MiniBuilder


embed

FORKED
  1. // forked from mtok's Sample of CellMaterial
  2. package  
  3. {
  4.     import flash.display.Sprite;
  5.     import flash.events.Event;
  6.     import flash.display.StageAlign;
  7.     import flash.display.StageScaleMode;
  8.     import org.papervision3d.core.view.IView;
  9.     /**
  10.      * ...
  11.      * @author ...
  12.      */
  13.     public class Pv3d003 extends Sprite
  14.     {
  15.         private var _view:CustomView;
  16.         public function Pv3d003() 
  17.         {
  18.             addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
  19.         }
  20.         
  21.         private function addedToStageHandler(e:Event):void 
  22.         {
  23.             stage.align = StageAlign.TOP_LEFT;
  24.             stage.scaleMode = StageScaleMode.NO_SCALE;
  25.             stage.frameRate = 30;
  26.             _view = new CustomView();
  27.             addChild(_view);
  28.         }
  29.         
  30.     }
  31. }
  32. import flash.events.Event;
  33. import flash.text.TextField;
  34. import flash.text.TextFieldAutoSize;
  35. import flash.text.TextFormat;
  36. import org.papervision3d.view.BasicView;
  37. import org.papervision3d.objects.primitives.Cube;
  38. import org.papervision3d.materials.utils.MaterialsList;
  39. import org.papervision3d.materials.special.CompositeMaterial;
  40. import org.papervision3d.materials.shadematerials.CellMaterial;
  41. import org.papervision3d.materials.WireframeMaterial;
  42. import org.papervision3d.lights.PointLight3D;
  43. import org.papervision3d.core.proto.MaterialObject3D;
  44. internal class CustomView extends BasicView {
  45.     private var tf:TextField;
  46.     private var cube:Cube;
  47.     public function CustomView() {
  48.         super(00truetrue);
  49.         
  50.         buildScene();
  51.         startRendering();
  52.         addEventListener(Event.ENTER_FRAME, enterFrameHandler);
  53.     }
  54.     
  55.     private function enterFrameHandler(e:Event):void 
  56.     {
  57.         cube.rotationX += 1;
  58.         cube.rotationY += 1;
  59.         cube.rotationZ += 1;
  60.     }
  61.     
  62.     protected function buildScene():void {
  63.         var cmat:CompositeMaterial = new CompositeMaterial();
  64.         var ml:MaterialsList = new MaterialsList();
  65.         
  66.         var pointLight:PointLight3D;
  67.         pointLight = new PointLight3D(true);
  68.         pointLight.z = -800;
  69.         pointLight.y = 300;
  70.         pointLight.x = 300;
  71.         
  72.         var cellmat:CellMaterial;
  73.         cellmat = new CellMaterial(pointLight, 0xffffff, 0xaaaaaa, 32);
  74.         cmat.addMaterial(cellmat);
  75.         //cmat.addMaterial(new WireframeMaterial(0xff0000, 1, 1));
  76.         ml.addMaterial(cmat, "all");
  77.         
  78.         cube = new Cube(ml, 100100100222);
  79.         scene.addChild(cube, "cube");
  80.         
  81.         camera.x = 0;
  82.         camera.y = 0;
  83.         camera.z = -400;
  84.     }
  85. }
noswf
Get Adobe Flash Player