Comunidad de diseño web y desarrollo en internet online

PV3D Problema de rederizado

Citar            
MensajeEscrito el 22 Abr 2011 07:11 pm
Hola que tal estoy empezando con PV3D, haciendo un ejercicio...para familiarizarme con el código pero no entiendo por que no obtengo nada al renderizar la escena, necesito una ayuda, gracias

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

Por chadsfather

1 de clabLevel



Genero:Masculino  

Madrid

chrome
Citar            
MensajeEscrito el 22 Abr 2011 07:40 pm
Gracias lo he resuelto en el .fla me faltaba el código siguiente:
addChild(game);

jeje, cosas de la vida... :P

Por chadsfather

1 de clabLevel



Genero:Masculino  

Madrid

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.