Papervision3D integrazione in un progetto MXML

16 febbraio 2008 da Mickael Ruellan

I Papervision3D soffermato su come parte di un progetto e ho voluto mettere alla prova la sua integrazione in un progetto MXML. Purtroppo, mi sono reso conto che la maggior parte dei tutorial su questo argomento, se non tutti, parla della creazione di un progetto in ActionScript 3. Così ho creare classi per l'integrazione di un oggetto papervision3D come tag MXML, consentendo di facile inserimento di una scena 3D in un progetto Flex. Vi propongo un piccolo esempio che illustra l'utilizzo di queste classi all'interno di un progetto MXML.

Esempio disponibile qui con le fonti. Le spiegazioni sono nel seguente articolo ... Sono ispirato da questo tutorial su come creare una scena e la sua generico di inizializzazione per creare una nuova classe PV3DScene.

Ho aggiunto 4 principali elementi:

  • Estendere la classe tela invece di Sprite in AS3 progetti
  • La facoltà di non rendere ogni fotogramma di calcolare con la variabile needRender e aggiungendo un metodo invalidateScene (che fa risparmiare un sacco di CPU nel caso di una scena statica!)
  • Il ridimensionamento della scena a seconda delle dimensioni della tela
  • La creazione degli oggetti nella scena utilizzando il metodo add3DObject e remove3DObject e aggiungendo un childrenObjects Array

Ho poi creare una classe PV3DObject per gestire l'interattività tipo modelli importati da Collada autres.Le risultato è la capacità di definire gli oggetti 3D come questo:

public class FxCube estende PV3DObject (
var faceWidth pubblico: numero = 500;
var pubblico di qualità: numero = 20;

FxCube funzione pubblica () (
super ();
)

ignorare la funzione createChildren protette (): void (
var ml: MaterialsList = new MaterialsList;
var mat: BitmapFileMaterial = new BitmapFileMaterial ( 'fx.jpg');
ml.addMaterial (mat, 'tutti');
addChild (nuovo Cube (ml, faceWidth, faceWidth, faceWidth, qualità));)
)

E aggiunte al 3D in un componente MXML componente in questo modo:

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

I sorgenti completi del progetto (compresi papervision3D) sono disponibili qui. Cioè che è necessario per la compilazione dei sorgenti di Papervision.

Questa operazione è descritta in questa guida, ma al fine di semplificare il suo compito, vorrei includere nel progetto di una copia di queste fonti, ed è solo necessario aggiungere queste fonti nel percorso di origine attraverso il progetto: dal menu Progetto> Proprietà> Flex Build Path> Fonte scheda Percorso> Aggiungi cartella ... e selezionare la cartella denominata PV3D_GreatWhite_rev428.

Un secondo esempio sull'uso di Collada formato oggetto è in corso di preparazione. Vedremo come aggiungere un oggetto da 3dsmax in papervision e come interagire con il mouse con lui.

Se venite per la prima volta il Flex-info.fr, puoi iscriverti al feed RSS. Grazie per la vostra visita!

1 étoile2 étoiles3 étoiles4 étoiles5 étoiles (2 voti, 5,00 su 5)
Loading ... Caricamento in corso ...

9 Commenti per questo articolo

  1. Julien Dice:

    Super articolo, chiaro e pertinente :)

  2. myrddin Dice:

    Sì, molto bene anzi articolo!

  3. Alberto Dice:

    Grande articolo!
    Come posso fare per importare un Collada formato oggetto con la classe PV3DObject?

    Ancora una volta vi ringrazio per questo ottimo tutorial

  4. florian Dice:

    vi ringrazio per questa foto! :)

  5. notizie Dice:

    la ringrazio per il biglietto, è sempre interessante da leggere. Mi chiedo però perché questa digressione: ho voluto mettere alla prova la sua integrazione in un progetto MXML? :)

  6. notizie Dice:

    la ringrazio per aver cett immagine! : D

  7. Dice Agostino:

    Non riesco a trovare il file sorgente: PV3D_GreatWhite_rev428
    Ho una cartella com/fr/flexinfo/pv3d /

    ma questo è tutto ... non posso, qq'un può aiutare?

    grazie

  8. Emanuele Dice:

    molto interessante biglietto.

    Come si può recuperare un evento fare clic su un oggetto.

    ex: creare un nuovo tipo di oggetto mappa tipo (FxCard) lungo le linee del cubo.
    I carichi più oggetti sulla scena come récépérer evento fare clic su un oggetto. Ad esempio lo zoom su questo oggetto.

  9. Julien Lestel Dice:

    Hi Mickael, anche gli americani parlano di lei con questo articolo!

1 Trackbacks Questo artico

  1. GIORNO 10: PAPERVISION + Adobe AIR FUN Dice:

    [...] Per Mickael Ruellan che hanno fatto la papervision / flex ponte [...]

Scrivi un commento

Iscrizioni

  • Add to My AOL
  • Aggiungi a Google
  • Aggiungi ai Zune
  • Aggiungi ai Netvibes
  • Add to Technorati
  • Aggiungi al Mio Yahoo
  • Aggiungi ai Zune

Indagine

Come faccio a trovare il nuovo Flex-info.fr?

Vedi Risultati

Loading ... Caricamento in corso ...

Mugsho