4. Brutal Donut
• Octobre 2010
– Idée originale
• Janvier 2011
– 1er Proto (Virtools)
• Octobre 2011
– 2er proto (pour iOS)
• Juin 2012 @ BeMyApp DevKings
– 3ème proto (pour Windows 8)
5. Brutal Donut
• 23 octobre 2012
– I’M GOOD sur le store Windows 8
1ère publication
WITH DONUTS!
• Novembre 2012
– Conférence « Back From Build » @ MS
– BD en highlight sur le store
• Aujourd’hui
• Demain ?
6. MonoGame
• « Write Once, Play Everywhere »
• monogame.codeplex.com
• github.com/mono/MonoGame
• « MonoGame is an Open Source implementation of the Microsoft
XNA 4 Framework. Our goal is to allow XNA developers on Xbox
360, Windows & Windows Phone to port their games to the iOS,
Android, Mac OS X, Linux and Windows 8 Metro. PlayStation
Mobile development is currently in progress. »
7. MonoGame
• Classe Game
– Encapsule la boucle de jeu
– Méthodes Draw() & Update()
– Enregistrement de GameComponents
• Assets compilés en XNB
– Chargés par un ContentManager
– Texture2D, SpriteFont, …
• Peut coexister avec une UI en XAML (Win8, WP)
8. Portages
• Idée : conserver le même code en remplaçant
uniquement les parties spécifiques à la
plateforme ciblée
– En particulier :
• Interactions avec le Store
• Enregistrement des settings et de la progression
• Ouverture de liens externes (FB, website etc)
• Affichage de publicités
• Le framework encapsule tout le reste
– Boucle de jeu
– Chargement des assets
– Gestion des inputs
9. Portages
• Utilisez les GameComponents !
– Ils peuvent implémenter et enregistrer des
services, ex: IProgressManager
– game.Services.AddService(
typeof(IProgressManager), this);
- var pm =
game.Services.Get<IProgressManager>();
10. Portages
• Pensez à redimensionner les assets
avant de les compiler en XNB
• Pour iOS et Android : acquisition d’une
license Mono nécessaire (400$ x 2)
11. Difficultés
• Contrôles d’identité du publisher
• Privacy policy
• Choix du modèle : gratuit/payant ? Pub ?
• Release early = release for free…
• Maturité de MonoGame
• Compilation des assets en XNB
• Développer pour tablette… sans tablette
12. Merci !
• Des questions ?
Julien Patte (@julienpatte)