# MonoGame

MonoGame est un framework utilisable en C# gratuit et open source utilisé par les développeurs pour créer des jeux multi-plateformes. Il est également utilisé afin de porter des jeux Windows et Windows Phone sur d'autres systèmes. Il supporte iOS, Android, macOS, tvOS, Linux, PlayStation 4, PlayStation Vita, Xbox One et Nintendo Switch. Il implémente également l'interface de programmation d'application (API) Microsoft XNA 4. Il a été utilisé pour plusieurs jeux, notamment Bastion et Fez.

## Histoire

MonoGame dérive de XNA Touch (septembre 2009) et a été lancé par Jose Antonio Farias et Silver Sprite par Bill Reiss. La première version officielle de MonoGame était la version 2.0 avec une version téléchargeable 0.7 disponible sur CodePlex. Ces premières versions ne prenaient en charge que les jeux basés sur des sprites 2D. La dernière version officielle supportant uniquement la 2D la version 2.5.1, sorti en juin 2012.
Depuis mi-2013, le framework a commencé à s'étendre au-delà de XNA4 avec l'ajout de nouvelles fonctionnalités telles que RenderTarget3D, un support de plusieurs fenêtres de jeu et un nouvel outil de création de contenu multiplateformes en lignes de commande.

## Architecture

MonoGame tente d'implémenter pleinement l'API XNA 4. Il réussit sur les plates-formes Microsoft en utilisant SharpDX et DirectX. Alors que sur des plates-formes non Microsoft, des fonctionnalités spécifiques à la plate-forme sont utilisées via la bibliothèque OpenTK. Lorsque les plateforme OS X, iOS et/ou Android sont ciblées, l'environnement de la plateforme Xamarin est nécessaire. Cet environnement fournit une implémentation OpenTK adaptée qui permet à l'équipe MonoGame de se concentrer sur les spécification graphiques des plateformes.
Les capacités graphiques de MonoGame proviennent d'OpenGL, d'OpenGL ES ou bien de DirectX. Depuis la version 3 de MonoGame, la version 2 d'OpenGL est la principale utilisée. Les versions précédentes de MonoGame (entre autres 2.5) utilisaient OpenGL 1.x pour le rendu graphique. L'utilisation d'OpenGL 2 a permis à MonoGame de prendre en charge les shaders afin de créer des rendu plus avancées sur la plateforme choisi.
La gestion et la distribution de contenu continuent de suivre le modèle ContentManager de XNA 4. L'équipe MonoGame a créé un nouvel outil de création de contenu qui s'intégrant à Microsoft Visual Studio afin d'offrir les mêmes capacités de création de contenu aux utilisateurs Windows 8 Desktop que les utilisateurs de Windows 7 avec Microsoft XNA.

## Jeux

| Jeu | Année | PS4 | Xbox One | Switch | PSVita | Windows | Windows Phone | MacOS | Linux | iOS | Android | Développeur | Éditeur |
| Apotheon | 2015 | Oui | | | | Oui | | Oui | Oui | | | Alientrap | Alientrap |
| Axiom Verge$^,$ | 2015 | Oui | Oui | Oui | Oui | Oui | | Oui | Oui | | | Thomas Happ Games LLC | Thomas Happ Games LLC |
| Bastion | 2011 | | | | | Oui | | Oui | Oui | Oui | | Supergiant Games | Warner Bros. Interactive Entertainment |
| Carrion | 2020 | | Oui | Oui | | Oui | | Oui | | | | Phobia Game Studio | Devolver Digital |
| Capsized | 2013 | | | | | Oui | | | Oui | Oui | | Alientrap | Alientrap |
| Celeste | 2018 | Oui | Oui | Oui | | Oui | | Oui | Oui | | | Extremely OK Games | Extremely OK Games |
| Chasm | 2018 | Oui | Oui | Oui | Oui | Oui | | Oui | Oui | | | Bit Kid, Inc. | Bit Kid, Inc. |
| Duck Game | 2014 | Oui | | Oui | | Oui | | | | | | Landon Podbielski | Adult Swim Games |
| Dust: An Elysian Tail | 2014 | Oui | | | | Oui | | Oui | Oui | | | Humble Hearts | Humble Hearts |
| Escape Goat | 2011 | | | | | Oui | | Oui | Oui | | | MagicalTimeBean | MagicalTimeBean |
| Fez | 2013 | | | | | Oui | | Oui | Oui | | | Polytron Corporation | Trapdoor, Microsoft Studios |
| Flinthook | 2017 | Oui | Oui | | | Oui | | Oui | Oui | | | Tribute Games | Tribute Games |
| Infinite Flight | 2011 | | | | | | Oui | | | Oui | Oui | Flying Development Studio | Flying Development Studio |
| Jump King | 2019 | Oui | Oui | Oui | | Oui | | | | | | Nexile | Nexile, Ukiyo Publishing |
| Mercenary Kings | 2013 | Oui | | | | Oui | | Oui | | | | Tribute Games | Tribute Games |
| Owlboy | 2016 | Oui | Oui | Oui | | Oui | | Oui | Oui | | | D-Pad Studio | D-Pad Studio |
| Pyre | 2017 | Oui | | | | Oui | | Oui | Oui | | | Supergiant Games | Supergiant Games |
| Salt and Sanctuary | 2016 | Oui | | | Oui | Oui | | Oui | Oui | | | Ska Studios | Ska Studios |
| Score Rush Extended | 2016 | Oui | | | | | | | | | | Xona Games | Reverb Communications |
| Skulls of the Shogun | 2013 | Oui | | | | | Oui | | | Oui | Oui | 17-BIT | Microsoft Studios |
| Solar 2 | 2011 | | | | | Oui | | Oui | Oui | Oui | Oui | Jay Watts | Murudai |
| Stardew Valley | 2016 | Oui | Oui | Oui | Oui | Oui | | Oui | Oui | Oui | Oui | ConcernedApe | ConcernedApe |
| Super Blood Hockey | 2017 | | | | | Oui | | Oui | Oui | | | Loren Lemcke | Loren Lemcke |
| TowerFall | 2013 | Oui | Oui | Oui | Oui | Oui | | Oui | Oui | | | Maddy Thorson | Maddy Thorson |
| Transistor | 2014 | Oui | | | | Oui | | Oui | Oui | Oui | | Supergiant Games | Supergiant Games |
| Wizorb | 2011 | | | | | Oui | | | | Oui | | Tribute Games | Tribute Games |

## À voir aussi

* .NET Framework
* Mono (logiciel)
* Microsoft XNA