Crear modelos 3D Collada para Papervision en Google Sketchup

Crear modelos 3D Collada para Papervision en Google Sketchup

Etiquetas: DAE load Viewport3D BasicRenderEngine Camera3D

Imagen en reemplazo de flash

Google Sketchup es uno de los programas mas sencillos de modelado 3D. Además la versión gratuita es bastante completa, y más que suficiente para hacer modelos sencillos.

Una vez hemos descargado Google Sketchup y hecho el primer modelo, tenemos que seguir los siguientes pasos:

-Exportar el modelo como Google Earth 4. Esto creará un archivo .kmz

-Renombrar el archivo .kmz a .zip.

-Descomprimir el archivo y buscar dentro el .dae y las texturas (si las hay).

Tras el salto, el 3D en movimiento y el código para cargar el modelo.


  1. package {
  2.  
  3. 	import flash.display.Sprite;
  4. 	import flash.events.Event;
  5.  
  6. 	import org.papervision3d.cameras.Camera3D;
  7. 	import org.papervision3d.objects.DisplayObject3D;
  8. 	import org.papervision3d.objects.parsers.DAE;
  9. 	import org.papervision3d.render.BasicRenderEngine;
  10. 	import org.papervision3d.scenes.Scene3D;
  11. 	import org.papervision3d.view.Viewport3D;
  12.  
  13. 	public class CargarCollada extends Sprite{
  14.  
  15. 		public var viewport:Viewport3D;
  16. 		public var renderer:BasicRenderEngine;
  17. 		public var scene:Scene3D;
  18. 		public var camera:Camera3D;
  19. 		public var dae:DAE;
  20. 		public var contenedor:DisplayObject3D = new DisplayObject3D();
  21.  
  22. 		public function CargarCollada():void{
  23. 			iniciar3D();
  24. 			cargarDAE();
  25. 		}
  26.  
  27. 		private function iniciar3D():void{
  28. 			viewport = new Viewport3D(500, 500, true,false);
  29. 			addChild(viewport);
  30. 			renderer = new BasicRenderEngine();
  31. 			scene = new Scene3D();
  32. 			camera = new Camera3D();
  33. 			camera.z = -300;	
  34. 		}
  35.  
  36. 		private function cargarDAE():void{
  37. 			dae = new DAE();
  38. 			dae.load("http://www.esedeerre.com/ejemplos/greatwhite/collada/modelo/ejemploCollada.dae?rand=" + Math.random() * 10);
  39. 			contenedor.addChild(dae);
  40. 			scene.addChild(contenedor);
  41. 			addEventListener(Event.ENTER_FRAME, renderizar);
  42. 		}
  43.  
  44. 		private function renderizar(e:Event):void{
  45. 			renderer.renderScene(scene,camera,viewport);
  46. 			contenedor.yaw(1.5)
  47. 			contenedor.pitch(1.8);
  48. 		}	
  49. 	}
  50. }

Descargar archivos

Comentarios
    • Autor
    • XemaX
    Gracias por compartir tu es fuerzo. Es genial, estoy empezanzo con pv3D y con los archivos de collada, pero desconocia Google Sketchup y estoy alucinando
    • Autor
    • cris
    hola, trate de hacer el tutorial... pero en flash me dice packages cannot be nested... porque? hay alguna manera de solucionarlo? Gracias
    • Autor
    • esedeerre
    Mira a ver no hayas puesto package{ en dos lineas seguidas. Si copias el código tal cual en tu .as no deberias tener problemas.
    • Autor
    • cris
    tenias razon... ja ja, mi problema ahora esta en que aparentemente mi imagen es muy compleja, siempre pense que era mi codigo el que estaba mal(the fifteen seconds of waiting have elapsed o algo asi) funciona con otras imagenes muy bien asi que ya se que no es por el codigo. Gracias
    • Autor
    • Juanfer
    Hola a todos, Todo el código me compila y ejecuta bien, el único problema que tengo es que las texturas no se estas cargando. Alguien puede o sabe como arreglar este problema?? mil gracias..
    • Autor
    • Ricardo
    Descargue Sketchup, aprendí a hacer el modelo y he creado algo básico. Me fui a Archivo -> Exportar -> Modelado 3D, seleccione el lugar de origen, cambie el formato de .kmz a .zip Al abrir el .zip sólo me aparecen 2 archivos .kml y nada más, ¿que debo hacer?
    • Autor
    • Ricardo
    Sr. Essedeerre, nuevamente yo, descargué hasta el ejmplo y no me lo reproduce ( el .swf )
    • Autor
    • Ricardo
    To nuevamente, perdón los inoportuno que puedo ser. Agradezco mucho este tutorial que haz hecho, pero me he visto con complicaciones para entenderlo. Mira www.rebocano.com/collada me ha funcionado perfectamente
    • Autor
    • jerryD
    Hola, alguien sabe como exportar collada desde el swift 3D sin que de porblemas con los materiales? gracias x su ayuda... saludos!!
    • Autor
    • Emanuel
    como vinculo este .as con un .fla ??? gracias
    • Autor
    • Luis
    Oye como sacaste el xml??? este xml http://www.esedeerre.com/ejemplos/greatwhite/collada/modelo/ejemploCollada.dae?rand= vi que sale un doc.kml pero no funciona como este xml.
    • Autor
    • crsitian
    Hola, es un lindo tema... la verdad es que aun no puedo hacer que funcione... Es que mi nivel es muy bajo en flash... me pueden ayudar... Gracias
    • Autor
    • oscar
    Amigo, siento molestarte pero a mi si me da el error "package cannot be nested" y por mas q he tratado me sigue dando el error, segundo, si tengo el archivo collada supongo que el la parte de el codigo donde sale una direccion web voy a colocar la direccion donde tenga mi archivo de collada, no se si estoy equivocado.
    • Autor
    • Hugo
    Bien al parecer todos han tenido alguna especie de problema, el codigo si funciona tal cual esta, recuerden que deberan tener sus carpetas de papervision3d en la carpeta correspondiente, despues el codigo que aprece aqui debera ser su clase principal, y respecto a archivo que genera el sketchup el kmz deben cambiarle la extension, decomprimirlo y dentro vendra una carpeta llamada models, ahi se encuentra el archivo con extension dae, ese es el que madaran llamar
    • Autor
    • Pablo
    Habría forma de que fueras un poco mas especifico entre el paso de la consecución del archivo DAE y la implementación en flash. Es decir, árbol de carpetas, archivos necesarios.. etc. Gracias
    • Autor
    • Fac undo
    Hola, estoy investigando el tema, pero al descargar éste ejemplo no puedo hacerlo funcionar, alguien tiene idea por que? Gracias.
    • Autor
    • sofi
    yo tampoko puedoooo
    • Autor
    • Hector Morales Palma
    Esto solo funciona si lo hacen en google sketchup pero la version 6 no la 8 exporta de otra forma, a parte de que es necesario descargarse las librerías de Papervision
    • Autor
    • meduzo
    Descargando la versión 6 a ver que tal, gracias Hector :)
    • Autor
    • Gustavo
    Hola, te cuento que lo he hecho funcionar, he reemplazado el modelo por un paisaje con arquitectura. Quería preguntarte algo ¿como puedo hacer que la cámara no atraviese las paredes? Agradezco cualquier orientación que me puedas brindar y porsupuesto el aporte que haces con este tutorial. Un saludo.
    • Autor
    • Joseanmola
    Ando tyra`picheando con esto del papervision, y lo que me gustaria es darle interactividad. Poder mover el objto o la camara con raton, y teclado. Alguien sabe de donde descargar ejemoplos como este que estamos viendo? Grache
    • Autor
    • Smarl
    hola que tal: disculpa tengo una pregunta como se le agrega interactividad a los modelos collada una vez importados a ppv alguien me podria decir si es posible hacer de esta manera algo como esto: http://www.momentoftruth.com/# de antemano muchas gracias.
Dejar un comentario
Tu nombre (obligatorio):

E-mail (obligatorio, no se mostrará):

Web:

Comentario: