This repository contains a collection of cross-platform MonoGame samples and game projects that should compile on Windows, macOS, Linux, iOS and Android. Each sample demonstrates different game development concepts, features, or genres. For detailed information about each sample, see the linked README in each sub-directory.
I welcome contributions to the MonoGame Samples repository! Here's how you can get involved:
- Report Issues: If you find a bug or have a suggestion, please open an issue in the repository.
- Submit Pull Requests: Fork the repository, fix bugs and modernise the samples, and submit a pull request. Be sure to follow the coding standards and include detailed descriptions of your changes or enhancements.
- Improve Documentation: Help me improve the documentation by editing or adding to the README files.
- Share Your Samples: If you have a MonoGame sample you'd like to share, feel free to contribute it to the repository. Alternatively help port the older XNA samples, so we have a centralised resource for all MonoGame game developers.
- Donate to the MonoGame Foundation: If these samples have helped you create your game, release it and your made some money off it it, conside donating to the MonoGame Foundation, so we can continue to keep it FREE for everyone else to have a hit game with :)
Project | Description |
---|---|
AsteroidBeltAssault | |
Cards Starter Kit | Card framework showing how to implement a Blackjack game. |
FloodControl | |
HoneycombRush | Arcade-style honeycomb collection game. |
CatapultWars | Single Player and Networked multiplayer catapult game. Works on LAN |
PacMan | Cross-platform Pac-Man clone. |
RobotRampage | |
RockRain | Arcade-style falling rocks game. |
RolePlayingGame | RPG sample with tile engine and menus. |
StarWarrior | Classic space shooter sample. |
Project | Description |
---|---|
Shaders2D | Custom 2D shader effects in MonoGame. |
Aiming | Aiming mechanics and input handling. |
BouncingBox | Simple physics sample with bouncing boxes. |
Cards Starter Kit | Card framework showing how to implement a Blackjack game. |
ChaseAndEvade | AI sample showing chase and evade behaviors. |
CollisionSample | Collision detection techniques. |
Draw2D | Basic 2D drawing and sprite rendering. |
FarseerPhysics | Physics engine integration sample. |
Flocking | Flocking AI behaviors. |
GameDevelopmentbyExample | 4 2D samples from the "XNA Game Development by Example" book. Namely: AsteroidBeltAssault, FloodControl, GemstoneHunter, RobotRampage |
GameStateManagement | Sample for managing game states and screens. |
GooCursor | Custom cursor rendering and effects. |
HoneycombRush | Arcade-style honeycomb collection game. |
Input | Input handling for keyboard, mouse, and gamepad. |
InputReporter | Displays live input values for controllers. |
MultiTouch | Multi-touch input support. |
PacMan | Cross-platform Pac-Man clone. |
Particle2D | Particle systems and effects. |
Primitives | Drawing primitive shapes (lines, points). |
RectangleCollision | Rectangle collision detection. |
RenderTarget2D | Render-to-texture techniques. |
RockRain | Arcade-style falling rocks game. |
RolePlayingGame | RPG sample with tile engine and menus. |
StarWarrior | Classic space shooter sample. |
TouchGesture | Touch gesture and mouse support. |
Waypoint | AI navigation and waypoint sample. |
Project | Description |
---|---|
Audio3D | 3D audio positioning and effects. |
BloomEffect | Bloom post-processing effects. |
Colored3DCube | Renders a colored 3D cube. |
Graphics3D | Advanced 3D graphics techniques. |
LensFlare | Lens flare post-processing effects. |
ReachGraphicsDemo | Demonstrates Reach profile graphics features. |
ShadowMapping | Demonstrates shadow mapping techniques in 3D. |
ShatterEffect | 3D shatter effect demonstration. |
Project | Description |
---|---|
CatapultNetWars | Single Player and Networked multiplayer catapult game. Works on LAN |
MonoGame.Xna.Framework.Net | Networking API compatibility sample. Partially implemented for Peer 2 Peer, LAN games |
NetRumble | Networked multiplayer space shooter. (NOT working yet) |
NetworkPrediction | Networked gameplay prediction and synchronization. Works on LAN |
NetworkStateManagment | The project template for most of the networked games in this repo, that use a Lobby. Works on LAN |
Peer2Peer | Peer-to-peer multiplayer tank demo. Works on LAN |
Project | Description |
---|---|
AdMob | Integrate AdMob ads into a MonoGame project. |
BackgroundThreadTester | Using background threads in game logic. |
BatteryStatus | Battery status and power management. |
CompiledContent | Pre-built content files for other samples. |
GameComponents | Using and managing game components. |
ContentBuilder | Build and load content assets using MonoGame's content pipeline. |
Sound | Cross-platform sound playback. |
For platform-specific details, build instructions, and troubleshooting, see each sample's README.