Comment hacker un jeu flash

Alors il y’a eu pas mal de mouvements ces derniers temps autour de la technologie Adobe Flash. J’ai fait une sélection d’articles qui m’a semblé intéressante à lire en tant que créateur de contenu Flash.

Comparatif de framework 3D Flash

Tsouin.com s’est attelé à comparer 4 moteurs 3D régulièrement utilisés (avec une mise à jour):

Voici la méthodologie employée

  • Implémentation au plus simple et identique pour chacun des moteurs.
  • Mécanique identique de création des objets, instance unique.
  • Une seule instance des materials ( filaire et texture )
  • Utilisation de calcul asynchrone afin de ne pas avoir de valeurs faussées ( la création de l’objet est faite quand le processeur le permet )
  • Test à la création de 1000 objets, avec différentes variables ( filaire ou bitmap, lissage de l’image ou non)
  • Stockage des données dans un tableau, les résultats utilisés sont les moyennes de temps de création et de mémoire utilisés par objet.
  • Vérification de la mémoire initiale, du pique de mémoire, ainsi que de la mémoire utilisée après les tests.

Les métriques mesurés

  • Le poids du SWF
  • Mémoire à l’initialisation du moteur
  • Mémoire globale
  • Ressource pour la création d’objets

Le résultat en terme de performance

  1. Away 3D
  2. Alterniva 3D et PaperVision 3D
  3. Sandy 3D

Selon  Tsoin.com,  les différences entre Away3D, Alterniva3D et Papervision se tiennent dans un mouchoir de poche (pour les performances brutes). Reste maintenant à voir lequel vous séduira en terme d’API et de fonctionnalités. Un point qui n’a pas été comparé est la qualité du rendu graphique. Peut être qu’un autre comparatif tombera sur ce point en modélisant les mêmes scènes avec les mêmes textures ?

Je rappelle les liens :

La réalité augmentée en Flash

Décidément Papervision fait toujours autant parlé de lui. Digital Pictures Interactive a publié une démo d’un petit personnage complet et animé. Il est annoncé que l’équipe aurait employé Papervision pour intégrer le personnage à la capture de la webcam.

D’autres expériences du genre ont déjà vue le jour comme :

Voici la vidéo:

Papervision – Augmented Reality (extended) from dpinteractive on Vimeo.

Comment choisir entre visible, alpha et removeChild()

a publié un super article sur comment masquer efficacement des objets de votre scène.

L’API de flash propose 3 méthodes

  1. alpha = 0
  2. visible = false
  3. removeChild()

Ce qu’on y apprend c’est qu’il faut comme souvent choisir la bonne méthode en fonction de son contexte et des objectifs recherchés.

6 facteurs à prendre en compte

  1. Les objets invisibles doivent rester à leur niveau de profondeur
  2. ‘visible = false’ s’exécute plus vite que removeChild()
  3. Les objets invisibles et supprimés ne produisent pas de coût pour leurs rendus
  4. Les enfants invisibles affectent la dimension de leur parent
  5. Les objets invisibles peuvent apparaître sur votre chemin
  6. Les objets avec un alpha=0 réceptionnent les évènements de la souris

3 recomandations majeures

  1. Utilisez removeChild() uniquement lorsque visible=false pose problème.
  2. Utilisez visible=false pour sa performance et le respect de la gestion de la profondeur
  3. Evitez au maxium alpha=0

L’article complet en anglais :  The Official « visible vs alpha vs removeChild() » Showdown