Retour d'expérience AdobeMC 2011

626 views
563 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
626
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Retour d'expérience AdobeMC 2011

  1. 1. LES TONTONS FLEXEURS Retours d’expérience Flex User Group Rennais 29 septembre 2011 Jonas Monnier Arnaud Thorel @jonasmonnier @athorel
  2. 2. Retours d’expérience AdobeMC <ul><li>Catégories de prix </li></ul><ul><ul><li>Prix du Jury </li></ul></ul><ul><ul><li>Expérience Utilisateur et Design </li></ul></ul><ul><ul><li>Architecture de l’application </li></ul></ul><ul><ul><li>Innovation </li></ul></ul><ul><ul><li>Utilité </li></ul></ul>
  3. 3. Tap Doctor <ul><ul><li>Présentation du jeu </li></ul></ul><ul><ul><li>Développement </li></ul></ul><ul><ul><li>Packaging </li></ul></ul><ul><ul><li>Publication </li></ul></ul><ul><ul><li>Stats </li></ul></ul><ul><ul><li>Todo </li></ul></ul>
  4. 4. Download Tap Doctor
  5. 5. Présentation Tap Doctor <ul><ul><li>Puzzle du type Bejeweld </li></ul></ul><ul><ul><li>Gratuit </li></ul></ul><ul><ul><li>Développement en AS3 </li></ul></ul><ul><ul><li>60 fps </li></ul></ul><ul><ul><li>Compilation AIR 2.7 en mode GPU </li></ul></ul>
  6. 6. Développement ObjectPooling <ul><li>Utilisation du pattern ObjectPool  pour recycler les instances </li></ul><ul><ul><li>Qu'est ce que c'est ? Création d'un pool d'objet (ici pour les microbes, les points, les combos) dans laquelle on prend un objet lorsque nécessaire et dans laquelle on le retourne lorsque l'on en a plus besoin.L'intérêt étant de ne pas créer et détruire des instances inutilement. </li></ul></ul><ul><ul><li>Pourquoi ? L'instanciation des objets, leur passage dans le GPU et leur ajout à la display list coûtent très cher sur mobile.  Dans le cas de TapDoctor on a besoin d'afficher en permanence de nouveaux objets alors que des tweens sont en cours d'éxecution.  Essentiel pour des tweens fluides. https://github.com/mikechambers/Simple-Game-Framework </li></ul></ul>
  7. 7. Développement MultiScreen <ul><li>Un code unique s'adaptant aux différents screen   </li></ul><ul><li>Vecto to Bitmap : </li></ul><ul><ul><li>Assets vectoriels dans un swc. </li></ul></ul><ul><ul><li>Application développée pour un screen défini (iPhone 320 x 480) </li></ul></ul><ul><ul><li>Définition du ratio de resizing en fonction du screen </li></ul></ul><ul><ul><li>Resizing des vectos via une Matrix </li></ul></ul><ul><ul><li>Stockage des BitmapData </li></ul></ul><ul><ul><li>Destruction des vectos </li></ul></ul><ul><ul><li>Placement des éléments en fonction du ratio </li></ul></ul>
  8. 8. Développement MultiScreen <ul><ul><li>A SAVOIR :  </li></ul></ul><ul><ul><li>Le rétina effectue le rendu de 4 X plus de pixels. </li></ul></ul><ul><ul><li>-> Attention aux performances </li></ul></ul><ul><ul><li>A SAVOIR :  Très mauvais rendu des vectos en mode mode non rétina </li></ul></ul><ul><li>J'ai donc été obligé de développer une version spécifique iPhone non rétina utilisant des bitmap au lieu des vectos. </li></ul><ul><ul><li>POSITIF : Très bon rendu des vectos resizés en rétina </li></ul></ul>
  9. 9. Packaging  Tutos <ul><li>Taches ANT pour IOS et Android + Flashbuilder pour Blackberry </li></ul><ul><li>Tutos Adobe : </li></ul><ul><ul><li>IOS : http://www.adobe.com/devnet/air/articles/packaging-air-apps-ios.html </li></ul></ul><ul><ul><li>Android : http://www.adobe.com/devnet/air/articles/packaging-air-apps-android.html </li></ul></ul><ul><ul><li>Blackberry : http://www.adobe.com/devnet/air/articles/packaging-air-apps-blackberry.html </li></ul></ul>
  10. 10. Publication    AppStore <ul><ul><li>License : 100$ Délai de 3-5 jours Documents justificatifs pour les entreprises </li></ul></ul><ul><ul><li>Banque :  Versement sur votre compte avec RIB </li></ul></ul><ul><ul><li>Publication : 5-7 jours pour publication & mise à jour </li></ul></ul><ul><ul><li>Process : Certificat + UDID + Provisionning profile + App ID </li></ul></ul><ul><ul><li>Softs nécessaire : Application Loader sous MAC </li></ul></ul>
  11. 11. Publication   Android Market <ul><ul><li>License : 25$ Immédiat </li></ul></ul><ul><ul><li>Banque :  Versement sur votre compte avec RIB Validation du compte par virement en 3 jours </li></ul></ul><ul><ul><li>Publication : Immédiat pour publication & mise à jour </li></ul></ul><ul><ul><li>Process : Certificat </li></ul></ul><ul><ul><li>Softs nécessaire : </li></ul></ul><ul><ul><li>/ </li></ul></ul>
  12. 12. Publication  App World <ul><ul><li>License : gratuite 3 à 5 jours en plusieurs étapes Carte d'identité pour les particuliers Documents administratifs justificatifs pour les entreprises </li></ul></ul><ul><ul><li>Banque :  Versement sur paypal </li></ul></ul><ul><ul><li>Publication : 2 jours </li></ul></ul><ul><ul><li>Process : Certificats -> Flashbuilder fait le boulot </li></ul></ul><ul><ul><li>Softs nécessaire : / </li></ul></ul>
  13. 13. Stats Tap Doctor <ul><li>Depuis le 1er septembre </li></ul><ul><ul><li>Android : 448 installs 153 active installs </li></ul></ul><ul><ul><li>iPhone : 1800 installs 100 / week 800 download en une journée avec la mise en avant sur un &quot;App Gratuite&quot; chinois. </li></ul></ul><ul><ul><li>Blackberry : 300 installs 30 / week </li></ul></ul>
  14. 14. Todo Tap Doctor 2 <ul><ul><li>Portage en AIR 3.0 - test du stage3D - test de Starling (2D framework for game dev running on top of Stage3D) http://www.bytearray.org/?p=3371 </li></ul></ul><ul><ul><li>Animation des microbes & splash si perfs correctes </li></ul></ul><ul><ul><li>Mise en place de levels & bonus </li></ul></ul><ul><ul><li>Score en ligne </li></ul></ul><ul><ul><li>Partage Facebook Twitter </li></ul></ul>
  15. 15. XPense Report <ul><ul><li>Présentation de l’application </li></ul></ul><ul><ul><li>Environnement </li></ul></ul><ul><ul><li>Choix technologiques - Framework - Composants </li></ul></ul><ul><ul><li>Réalisation </li></ul></ul><ul><ul><li>Déploiement et debug </li></ul></ul><ul><ul><li>Win/ Fail </li></ul></ul>
  16. 16. Présentation de l’application <ul><ul><li>Application de gestion de dépenses </li></ul></ul><ul><ul><li>Développement en AS3 </li></ul></ul><ul><ul><li>Application non disponible actuellement </li></ul></ul><ul><ul><li>Composants avancés optimisés </li></ul></ul>
  17. 17. Environnement <ul><ul><li>iOS + Windows </li></ul></ul><ul><ul><li>Récupération d’un certificat : </li></ul></ul><ul><ul><ul><li>OpenSSL </li></ul></ul></ul><ul><ul><ul><li>Génération certificats </li></ul></ul></ul><ul><ul><li>Packaging Rapide </li></ul></ul><ul><ul><ul><li>Résultats lents sur appareil </li></ul></ul></ul><ul><ul><ul><li>Déploiement rapide </li></ul></ul></ul><ul><ul><li>Packaging Standard </li></ul></ul><ul><ul><ul><li>Résultats proche de la release </li></ul></ul></ul><ul><ul><ul><li>Déploiement lent </li></ul></ul></ul>
  18. 18. Déploiement/Publication AppStore <ul><ul><li>Déploiement OK mais procédure assez longue </li></ul></ul><ul><ul><ul><li>Récupérer certificats </li></ul></ul></ul><ul><ul><ul><li>Récupérer mobileprovision </li></ul></ul></ul><ul><ul><ul><li>Configurer pour lancement sur mobile </li></ul></ul></ul><ul><ul><ul><li>Récupération du .ipa </li></ul></ul></ul><ul><ul><ul><li>Installation sur iPhone </li></ul></ul></ul><ul><ul><li>Publication KO </li></ul></ul><ul><ul><ul><li>Nécessite Application Loader </li></ul></ul></ul><ul><ul><ul><li>Installation de VirtualBox avec OS-X Snow Leopard </li></ul></ul></ul><ul><ul><ul><li>Récupérer les certificats et mobileprovision de production </li></ul></ul></ul>
  19. 19. Choix technologiques Framework <ul><ul><li>Utilisation de RobotLegs couplé avec Signal </li></ul></ul><ul><ul><li>Framework et gestion des événements plus légers </li></ul></ul><ul><ul><li>Performances sur iOS plutôt bonne </li></ul></ul><ul><ul><li>Adapté au développement d’applications mobile </li></ul></ul>
  20. 20. Choix technologiques Composants <ul><li>Création de composants </li></ul><ul><ul><li>ListPicker </li></ul></ul><ul><ul><li>« Tweet Deck » </li></ul></ul><ul><ul><li>Advanced List </li></ul></ul><ul><ul><ul><li>Swipe / Delete State </li></ul></ul></ul><ul><ul><ul><li>Sortable header </li></ul></ul></ul><ul><ul><li>Gesture Adapter (Mouse / Touch) </li></ul></ul><ul><ul><li>Data Provider </li></ul></ul><ul><ul><li>Item Renderer </li></ul></ul>
  21. 21. Réalisation <ul><ul><li>Utilisation de SQLite </li></ul></ul><ul><ul><li>Utilisation de la camera </li></ul></ul><ul><ul><li>Création d’une lib de composants </li></ul></ul><ul><ul><li>Création d’une librairie de skin </li></ul></ul><ul><ul><ul><li>TextInput Skin – Article sur Flex-Tutorial </li></ul></ul></ul><ul><ul><li>Création d’un composant « Chart » </li></ul></ul>
  22. 22. Déploiement et Debug <ul><ul><li>Déploiement mis en place très rapidement </li></ul></ul><ul><ul><li>Sur iOS, moins de déploiement, + de productivité </li></ul></ul><ul><ul><li>Debug sur iPhone (aïe aïe aïe) </li></ul></ul>
  23. 23. Win / Fail L’espérance La résignation Le complexe du Challenge : Faire le max dans les temps
  24. 24. Conclusion <ul><li>Flex manque encore de composants pour le tactile </li></ul><ul><li>Apport de la communauté </li></ul><ul><ul><li>People In Action </li></ul></ul><ul><ul><li>Flex-Tutorial </li></ul></ul><ul><ul><li>AsFusion </li></ul></ul><ul><li>Créer son application de façon incrémentale </li></ul><ul><li>Une bonne application </li></ul><ul><ul><li>Utile </li></ul></ul><ul><ul><li>Pratique </li></ul></ul><ul><ul><li>Rapide </li></ul></ul><ul><ul><li>Design </li></ul></ul>
  25. 25. Questions Réponses

×