el archivo .fla
Código ActionScript :
import battle; var game:battle = new battle(); game.init();
y el archivo .as
Código ActionScript :
package{ import flash.display.MovieClip; import flash.display.Sprite; import flash.events.Event; import flash.display.StageQuality; import org.papervision3d.* import org.papervision3d.view.Viewport3D; import org.papervision3d.cameras.*; import org.papervision3d.scenes.Scene3D; import org.papervision3d.render.BasicRenderEngine; import org.papervision3d.objects.primitives.Cube; import org.papervision3d.materials.*; import org.papervision3d.materials.MovieMaterial; import org.papervision3d.materials.utils.MaterialsList; import org.papervision3d.core.geom.renderables.Vertex3D import org.papervision3d.objects.DisplayObject3D; import flash.display.BitmapData; public class battle extends Sprite { //definiciones de variables globales var viewport:Viewport3D; var renderer:BasicRenderEngine; var escena:Scene3D; var camara:Camera3D; /*var movieMaterial:BitmapFileMaterial; var ml:MaterialsList = new MaterialsList();*/ var movieMaterial:MovieMaterial; var ml:MaterialsList = new MaterialsList(); var cubo:DisplayObject3D; var ref_object3D:DisplayObject3D; var g__field:Array = [ [1,1,1,1,1,1,1,1,1,1], [1,1,1,1,1,1,1,1,1,1], [1,1,1,1,1,1,1,1,1,1], [1,0,1,1,1,1,1,1,1,0], [1,0,1,1,1,1,1,1,1,1], [1,1,1,1,1,1,0,1,1,1], [1,1,0,1,1,0,1,1,1,1], [1,1,1,1,0,1,1,1,1,1], [1,0,1,0,1,1,1,1,1,1], [1,1,0,1,1,1,1,1,1,1] ]; //fin de variables globales public function battle(){} public function init(vpWidth:Number = 800, vpHeight:Number = 800):void{ this.BuildPapervision(vpWidth, vpHeight); this.BuildObjetcs(); this.Build3D(); this.addEventEscena(); for(var index1:String in g__field){ for(var index2:String in g__field[index1]){ this.fieldFill(g__field[index1][index2]); } } trace ("empezamos"); } public function BuildPapervision(vpWidth:Number, vpHeight:Number):void{ viewport = new Viewport3D(vpWidth, vpHeight); addChild(viewport); renderer = new BasicRenderEngine(); escena = new Scene3D(); camara = new Camera3D(); camara.zoom = 2; trace("construimos la escena"); } public function BuildObjetcs(){ var material:BitmapFileMaterial = new BitmapFileMaterial("skull.jpg"); material.oneSide = false; var skin:Skin_mc = new Skin_mc(); skin.x=100; skin.y=100; this.addChild(skin); /*var material:MovieMaterial = new MovieMaterial(Skin_mc, true, false, false); material.oneSide = false;*/ ml = new MaterialsList(); ml.addMaterial(material,"top"); ml.addMaterial(material,"bottom"); ml.addMaterial(material,"front"); ml.addMaterial(material,"back"); ml.addMaterial(material,"left"); ml.addMaterial(material,"right"); cubo = new Cube(ml, 500, 500, 500, 4, 4, 4); trace("construimos los objetos"); } public function Build3D():void { this.escena.addChild(cubo); trace("colocamos los objetos en la escenes"); } public function fieldFill(fill:String):void{ switch(fill){ case "0": trace("vacio"); case "1": trace("cesped"); break; default: trace("cesped"); break; } } public function addEventEscena():void { this.addEventListener(Event.ENTER_FRAME, Render); } public function Render(e:Event):void { this.renderer.renderScene(escena, camara, viewport); trace("renderizamos la escena"); } } }
gracias por la ayuda