flash on 2010-11-3 ... @author djankey djankey forked:1favorite:1lines:72license : MIT License modified : 2010-11-04 02:12:42 Embed Tweet package { import away3d.cameras.*; import away3d.containers.*; import away3d.materials.*; import away3d.primitives.*; import away3d.core.clip.*; import flash.display.*; import flash.events.*; import flash.geom.Vector3D; import net.hires.debug.Stats; /** * ... * @author djankey */ public class Main extends Sprite { private var camera : Camera3D; protected var _view : View3D; protected var _cube1 : Cube; protected var _cube2 : Cube; public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); // entry point _createView(); _createScene(); _createCamera(); addChild(new Stats()); } protected function _createView() : void { // Create view and add it to the stage _view = new View3D(); addChild(_view); //Relocate center point of view _view.x = 230; _view.y = 230; //call the view render method on every frame of the Flash movie addEventListener(Event.ENTER_FRAME, _onEnterFrame); } protected function _createScene() : void { // Create a new scene containing a trident and two cubes var scene : Scene3D = new Scene3D(); var trident : Trident = new Trident(250, true); _cube1 = new Cube(); _cube1.x = -100; _cube1.material = new WireColorMaterial(0xFFFFFF); _cube2 = new Cube(); _cube2.x = 100; _cube2.material = new WireColorMaterial(0x888888); scene.addChild(trident); scene.addChild(_cube1); scene.addChild(_cube2); //Assign the new scene to the view _view.scene = scene; } protected function _createCamera() : void { // BASIC CAMERA // Create a new camera object camera = new Camera3D(); camera.x = 0; camera.y = 0; camera.z = -1000; //set the zoom and focus properties camera.zoom = 10; camera.focus = 100; //Use lookAt() to point the camera towards the center of the scene //camera.lookAt(new Vector3D(0, 0, 0)); //Assign the new camera to the view _view.camera = camera; } protected function _onEnterFrame(ev : Event) : void { _cube1.rotationX += 1; // mouse camera _view.camera.y = -(stage.mouseY - stage.stageHeight/2); _view.camera.x = stage.mouseX - stage.stageWidth / 2; _view.render(); } } } Code Fullscreen Preview Fullscreen bradsedito Event.ADDED_TO_STAGE addEventListener stage rotationX mouseY mouseX focus removeEventListener addChild Stats stageWidth stageHeight Event Event.ENTER_FRAME Sprite sort new page view favorite forked pv89 forked from: flash on 2010-11-.. raduflash forked:0 favorite:0lines:75 (diff:17)