Papervision, ce super projet de moteur 3D en Flash n’est toujours pas diffusé officiellement. Cependant ce serait une bonne chose de s’y initier et je vous propose donc un tout petit tuto pour télécharger et mettre à jour facilement les fichiers sources, la doc et les exemples.
Installer Flash 9
Première étape : il faut bien sûr installer Flash 9 (J’ai vu qu’il y avait un dossier as2 dans les sources Papervision, mais l’AS3 est bien plus optimisé). Je vous laisse vous débrouiller, c’est pas dur.
Flash 9 devrait sortir en version finale sous peu (30 mars on m’a dit) mais on peut utiliser la version alpha pour le moment.
Installer Tortoise SVN
Il s’agit d’un logiciel permettant de mettre à jour très facilement le contenu d’un dossier sur son système. C’est bien pratique pour Papervision puisque les sources de ce projet sont en constante évolution. Télécharger Tortoise SVN
Téléchargement
Une fois Tortoise installé, il faut créer un dossier où seront sotckés la doc, les exemples et bien sûr les sources de Papervision.
Dans ce dossier, faire un clique droit puis “SNV Checkout”, dans la fenêtre qui apparait, coller l’adresse suivante :
http://svn1.cvsdude.com/osflash/papervision3d/as3/trunk/
et valider.
Cette adresse n’est pas celle fournie directement par Papervision mais un sous dossier ce qui évite de télécharger tout les fichiers concernant l’AS2.
Le class path
Pour pouvoir utiliser les classes installées, il faut bien sûr définir un class path. Deux méthodes existent :
1- soit on définit un class path pour chaque projet en allant dans “File”, “Publish Settings”, onglet “Flash” puis “Settings”.
2- soit on définit un class path général en faisant “Edit”, “Preferences”, “ActionScript” puis “ActionScript 3.0 Settings”. Cette méthode (que j’ai découvert seulement aujourd’hui… :-/) permet d’installer les sources une bonne fois pour toute sans avoir à définir le class path pour tous ses projets.
La doc
Pour accéder à la doc, il suffit d’ouvrir le fichier “index.html” du dossier “docs”. Elle utilise la même représentation que celle de Flex 2 et me semble déja relativement complète
C’est parti
Et maintenant il faut s’y mettre… si j’arrive à quelque chose je posterais peut-être mes premiers essais
Après avoir installé sur mon vieux pentium 2 la version serveur d’Ubuntu (avec l’aide précieuse de John) et Flash Media Server 2 (non sans dificultés, il m’a fallu l’aide de ce tuto), j’ai pu enfin faire mes premiers pas avec cette technologie.
Voici donc ma toute première appli, c’est pas très palpitant mais ça montre bien l’utilisation des “Shared Objects”. Pour tester ouvrez deux fenêtres avec cette page et déplacez le caré rouge sur l’une d’elle, il devrait se déplacer sur l’autre fenêtre ;-)
Si vous n’arrivez pas à déplacer le carré, c’est que vous n’êtes pas connecté à mon serveur : soit votre connexion bloque le port 1935 (utilisé pas FMS) soit mon serveur est down … :-)
Je viens de tester l’utilisation de la classe Tween AS3 de Flex 2 avec Flash 9 et en fait rien de plus simple :
D’abors on télécharge le sdk de Flex 2 sur le site d’Adobe
(Il faut créer un compte Adobe)
Ensuite, on dézipe le fichier sur son disque et on fait pointer un classpath vers le dossier /frameworks/source du sdk.
Pour utiliser la classe Tween, il suffit d’importer le package mx.effects.Tween et l’utiliser comme expliqué dans la doc d’AS3
Pour simplifier l’échange de données entre Flash et un script serveur, j’ai développé cette petite classe AS2 qui permet d’envoyer très simplement les propriétés d’un objet à un script.
La méthode request, permet d’envoyer l’objet à l’url du script, tous deux passés en paramètres.
L’évènement onStatus est appelé lorsque le script a renvoyé quelque chose. Cet évènement contient en premier paramètre une chaîne de caractères avec le status (error ou ok) et en deuxième paramètre un objet avec les variables revoyées pas le script.
Voici une petite classe que j’ai développé l’autre soir. Elle permet de démarrer un “timer” qui appelle une fonction à intervalle régulier.
C’est la même chose que setInterval me direz-vous, mais Timer permet de démarrer et de stopper l’intervalle simplement avec les méthodes start() et stop(). Timer permet aussi de mettre en pause l’intervalle avec la méthode pause() et resume() reprend l’intervalle en cours là où il s’est arrêté.
Enfin pour changer le temps d’intervalle, même si le “timer” tourne, il suffit de modifier la propriété interval
Le clip “The Child” d’Alex Gopher çà vous dis quelque chose ? Et les pub de la Cintroën C4 qui se transforment en robots ? Et bien ce sont des créations du collectif d’artistes H5.
Mi-novembre, j’ai pu participer à une master classe pour la réalisation de l’interface WebJam 2006. Interface qui va accuellir les projets réalisés lors du concours de création de l’édition 2006 du festival e-Magiciens. Avec deux autres étudiants de Gobelins et 4 autres de differentes écoles de multimédia (graphistes, concepteurs, sound designers) nous avons conçu et réalisé cette interface. J’ai été chargé du développement ActionScript.
Le thème de cette année est l’ubiquité et nous l’avons abordé d’un façon que vous comprendrez certainement ;-)