Papervision3D integración en un proyecto MXML

16 de febrero 2008 por Mickael Ruellan

Me insistieron en Papervision3D como parte de un proyecto y quería probar su integración en un proyecto MXML. Por desgracia, me di cuenta de que la mayoría de tutoriales sobre el tema, si no todos, hablan de crear un proyecto en ActionScript 3. Por lo tanto, crear clases para la integración de un objeto papervision3D como etiqueta MXML, permitiendo una fácil inclusión de una escena 3D en un proyecto Flex. Propongo un pequeño ejemplo que muestra el uso de estas clases dentro de un proyecto MXML.

Ejemplo aquí con las fuentes. Las explicaciones están en el siguiente artículo ... Estoy inspirado por este tutorial sobre cómo crear una escena y sus genéricos de inicialización para crear una nueva clase PV3DScene.

He añadido 4 cosas principales:

  • La extensión de la clase en lugar de lienzo Sprite proyectos en AS3
  • La opción de no hacer para calcular cada uno de los cuadros con la variable needRender y la adición de un método invalidateScene (lo que ahorra una gran cantidad de CPU en el caso de una escena!)
  • La ampliación de la escena, según el tamaño del lienzo
  • La creación de objetos en la escena utilizando el método como add3DObject y remove3DObject y añadir una matriz childrenObjects

Luego de crear una clase PV3DObject para la gestión de la interactividad tipo de modelos importados de la Collada autres.Le resultado es la capacidad para definir los objetos 3D como esta:

clase pública FxCube extiende PV3DObject (
var faceWidth público: N º = 500;
var la calidad del público: número = 20;

FxCube función pública () (
super ();
)

sobre protección de la función createChildren (): void (
var ml: MaterialsList = new MaterialsList;
var mat: BitmapFileMaterial = new BitmapFileMaterial ( 'fx.jpg');
ml.addMaterial (estera, 'todos');
addChild (nuevo Cube (ml, faceWidth, faceWidth, faceWidth, la calidad));)
)

Y adiciones a las 3D en un componente MXML componente de la siguiente manera:

<mx:Panel>
<pv3d:PV3DScene id="scene3D" width="90%" height="90%">
<pv3d:childrenObjects>
<objects:FxCube faceWidth="400" id="cube" />
</ Pv3d: childrenObjects>
</ Pv3d: PV3DScene>
</ Mx: Panel>

El completo de las fuentes del proyecto (incluyendo papervision3D) están disponibles aquí. A saber que es necesario para la compilación de las fuentes disponibles de Papervision.

Esto se describe en este tutorial, pero con el fin de simplificar su tarea, voy a incluir en el proyecto una copia de estas fuentes y es sólo necesario añadir estas fuentes en la ruta de origen a través del proyecto: menú Proyecto> Propiedades> Flex Construye Ruta> Fuente ficha Ruta> Añadir carpeta ... y seleccione la carpeta con el nombre PV3D_GreatWhite_rev428.

Un segundo ejemplo en el uso de formato Collada objeto se está preparando. Vamos a ver cómo agregar un objeto de 3dsmax en papervision y cómo interactuar con el ratón con él.

Si viene por primera vez el Flex-info.fr, puede suscribirse a la fuente RSS. Gracias por su visita!

1 étoile2 étoiles3 étoiles4 étoiles5 étoiles (2 votos, 5.00 fuera de 5)
Loading ... Cargando ...

9 Comentarios para este artículo

  1. Julien Dice:

    Super artículo, pertinente y clara :)

  2. myrddin dice:

    Sí, de hecho, muy bueno el artículo!

  3. Albert dice:

    Gran artículo!
    ¿Cómo puede hacer para importar un objeto con formato Collada la clase PV3DObject?

    De nuevo gracias por este muy buen tutorial

  4. Florian dice:

    gracias por esta foto! :)

  5. noticia dice:

    gracias por el billete, siempre es interesante de leer. Sin embargo me pregunto por qué esta digresión: Quería probar su integración en un proyecto MXML? :)

  6. noticia dice:

    gracias a ustedes por CETT imagen! : D

  7. Agustín dice:

    No puedo encontrar el archivo de origen: PV3D_GreatWhite_rev428
    Tengo una carpeta com/fr/flexinfo/pv3d /

    pero eso es todo ... No puedo, qq'un puede ayudar?

    gracias

  8. Emmanuel dice:

    muy interesante billete.

    ¿Cómo podemos recuperar un evento, haga clic sobre un objeto.

    por ejemplo: crear un nuevo tipo de objeto de tipo mapa (FxCard) a lo largo de las líneas del cubo.
    Cargar varios objetos en la escena de cómo récépérer evento haga clic sobre un objeto. Por ejemplo, el zoom en este objeto.

  9. Julien Lestel dice:

    Hola Mickael, incluso los americanos hablan de que con este artículo!

1 Trackbacks Este artic

  1. DIA 10: PAPERVISION + Adobe AIR DIVERSIÓN dice:

    [...] Para Mickael Ruellan que hizo la papervision / flex puente [...]

Escribir un comentario

Suscripciones

  • Añadir a Mi AOL
  • Añadir a Google
  • Añadir a Zune
  • Añadir a Netvibes
  • Añadir a Technorati
  • Añadir a Mi Yahoo
  • Añadir a Zune

Encuesta

¿Cómo se encuentra el nuevo Flex-info.fr?

Ver Resultados

Loading ... Cargando ...

Mugsho