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!





















16 de febrero de 2008 a las 15 h 44 min
Super artículo, pertinente y clara
16 de febrero de 2008 a las 18 h 04 min
Sí, de hecho, muy bueno el artículo!
21 de febrero de 2008 a las 11 h 38 min
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
10 de junio de 2008 a las 23 h 18 min
gracias por esta foto!
El 15 de septiembre de 2008 a las 21 h 44 min
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?
El 15 de septiembre de 2008 a las 22 h 13 min
gracias a ustedes por CETT imagen!
7 de octubre de 2008 a las 15 h 39 min
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
14 de noviembre de 2008 a las 19 h 32 min
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.
25 de noviembre de 2008 a las 17 h 09 min
Hola Mickael, incluso los americanos hablan de que con este artículo!