
ottobre 22, 2009 | 0 Commenti
Proseguiamo con la nostra breve serie di appuntamenti dedicati all’ottimizzazione di Pv3d e di Actionscript3. Lo scorso martedì avevamo visto in generale come rendere un oggetto eleggibile alla Garbage Collection nell’articolo intitolato Papervision3D – Ottimizzazione del codice 1/2.
Oggi proseguiremo il nostro studio concentrandoci maggiormente su Papervision.
Nella mia esperienza da programmatore Papervision e Actionscript ho avuto occasione di raccogliere varie informazioni di qua e di là nel web e mi sono reso contro che certe condizioni erano meno svantaggiose rispetto ad altre.
Mi sono accorto per esempio che la maggior parte delle volte la colpa di elevati consumi di risorse era da attribuire ai materiale che usavo.
DIMENSIONI CORRETTE DEL MATERIALE
Quando create un materiale per un oggetto in Pv3D gli associate solitamente una sorgente. Può essere un file immagine esterno o potrebbe essere anche un MovieClip nella libreria del vostro progetto Flash. In entrambi i casi questi materiali hanno una loro dimensione. Ecco che se utilizzate un piano 400×400 è inutile caricare un MovieClip per il nostro materiale con dimensioni 800×800!
Inoltre dovremmo fare caso poi alla disposizione in profondità dell’oggetto: se lo disponiamo ad una profondità maggiore (oggetto più piccolo…) potremo giocare ancora sulle dimensione del materiale così da risparmiare ancora più risorse.
LA PROPRIETA’ SMOOTH
Personalmente sono sempre stato costretto ad utilizzare questa proprietà nei vari materiali. Sappiate comunque che se riuscirete a farne a meno ne otterrete un beneficio in termini di performance.
MALEDETTA TRASPARENZA
Questa probabilmente è una delle proprietà più pesanti da gestire in Pv3d. Progettate bene il suo utilizzo nel vostro progetto.
ANIMATED
Una cosa bellissima in Pv3d è la possibilità di utilizzare come materiale un MovieClip animato in modo che anche il nostro DO3D sia animato. Certo è che aumenterete a dismisura l’uso della CPU in quanto costringete il Player ad aggiornare la texture del materiale ad ogni frame.
DMENSIONI ESPONENZIALI
Questa è una di quelle cose “chi più ne ha ne metta” e della quale non garantisco. In pratica si tratta di utilizzare materiali che abbiano dimensioni pari ad esponenti di 2: 64, 128, 256 e così via. In teoria queste dimensioni dovrebbero facilitare l’utilizzo del mipmapping incorporato in Flash…
IL METODO DESTROY()
Ogni tipo di materiale possiede un metodo destroy(), ereditato dalla classe BitmapMaterial, e che ne permette la totale eliminazione.
DIMENSIONE DEL VIEWPORT
Nel caso non vogliate utilizzare un viewport a tutto schermo sappiate che le sue dimensioni influenzano non di poco le prestazioni.
TUTTO QUELLO DETTO NELLA PRIMA LEZIONE VALE SEMPRE!
Vi ricordate di cosa avevamo parlato l’altra volta? Avevamo detto che era fondamentale liberare la memoria da oggetti che non servono più. La stessa cosa vale per tutto quello che creiamo in Pv3d: removeChild, null e removeEventListener…
Autore:

Roberto Cinetto - Web & Graphic Designer
Giovane designer di Padova Roberto è sempre stato appassionato del mondo informatico e come tale è sempre alla ricerca di nuove ispirazioni e di nuove tecnologie da esplorare. Da molti anni è anche chitarrista e amante della musica in generale. Il suo sogno è di riuscire un giorno a creare una agenzia multimediale competente in web, grafica/video e recording/mixing, naturalmente tramite la collaborazione con svariati professionisti.



















