DEVELOPPEMENT DE JEUX 2D SUR ANDROIDBonnes pratiques et Frameworks
Bonnes pratiques• Prévoir l’évolution rapide du marché des OS et s’orienter
vers du cross-platform, voire du HTML5• Anticiper les spécificités matérielles disparates (tailles
d’écran, performances, accelerometre, etc.)• Privilégier les outils qui permettent d’aller vite• S’interroger sur l’évolutivité (accès à des ressources
systèmes ou plugins externes)• S’aider via les forums et des exemples• Se faire former ou s’aider d’un consultant = gain de temps
et d’argent
3 types d’approches
1. Le natif pour les Geek
2. Les Frameworks cross-platform pour les pros
3. Les moteurs “sans prog” pour les impatients
Natif• Programmation en Java
+• Utilisation d’un framework 2D Java
• AndEngine• LibGDX• …?
Avantages : Proche du système, pas de layer intermédiaire, évolutif
Inconvénients : Pas de cross-platform, temps de developpement long, apprentissage long, communauté réduite
Frameworks cross-platfrom 1/2• Corona SDK
• Langage : LUA (Script)• 2D / Android + iOS• Avantages : rapidité de développement et d’apprentissage (lua+API), support
facilité des multiples résolutions, API très complète, beaucoup d’exemples, possibilité de coder des applications (GUI + SQLite)
• Inconvénients : pas d’IDE, licence annuelle, pas de système de plugin natifs, les applications ne sont pas exécutables sur PC/Mac
• Unity3D• Langage : C# ou Javascript• 2D (avec plugin) / Android + iOS + Desktop + Web• Avantages : relative rapidité de développement (IDE), beaucoup de plugins,
évolutif via plugin en natif, grosse communauté, cross-platfom• Inconvénients : pas de 2D en standard, pas de gestion des multiples
résolutions en standard, apprentissage lent, peu intuitif (orienté 3D)
Frameworks cross-platfrom 2/2• Cocos2D-X
• Langage : C++, LUA, Javascript• 2D / Android + iOS + Desktop• Avantages : API très complète (pour la 2D), plusieurs langages
supportés, cross-platform• Inconvénients : Codage “à la main” (compilation, IDE, etc.), il faut
recompiler sur chaque plate-forme, plutôt bas-niveau (pas d’API système, orienté affichage uniquement)
• Marmalade• Langage : C++ (LUA avec Marmalade Quick)• 2D/3D / Android + iOS + Desktop• Avantages : proche du système, API système, cross-platform• Inconvénients : C++ (donc codage sans filet), API succincte, temps de
développement long, plutôt bas niveau
Les moteurs “sans prog”Permet de créer des jeux 2D sans programmation, par un système Wisiwyg basé sur des événements
Points communs :• Génère du HTML5 performant et Cross-platform.• Rapidité de développement : pas de code !• Apprentissage rapide : nombreux exemples, comportements standards d’un jeu
vidéo intégrés, intuitif et visuel.• Peu évolutif (sauf via plugin Javascript).
Les outils :• Construct 2
• La référence : rapide, fiable et évolutif, pas cher
• Game Maker• Le plus connu
• Multimedia Fusion• Le plus ancien (anciennement Click and Play)
Casual Box• 20 ans d’expertise en programmation• 7 ans d’expertise en développement de jeux 2D• Expert du marché des jeux grand public• Prestations de service en jeux 2D, ad-games et serious• Consulting et formation sur toute la France• Anglais / Français
David MEKERSA
Tel: 06 33 74 54 40