A Collection of MonoGame Samples

Dominique Louis f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
.github 0ef5a69537 Fix JQ error in summary. преди 3 седмици
AdMob b7c3cfe182 Update all projects to use net9.0* преди 1 месец
Aiming 856f2ebbbf Fix Info.plists преди 3 седмици
Audio3D d89c07be51 Remove Platform suffixes. преди 3 седмици
BackgroundThreadTester 856f2ebbbf Fix Info.plists преди 3 седмици
BatteryStatus d89c07be51 Remove Platform suffixes. преди 3 седмици
BloomEffect 856f2ebbbf Fix Info.plists преди 3 седмици
BouncingBox 856f2ebbbf Fix Info.plists преди 3 седмици
CardsStarterKit a58f38a7c5 Add missing Info.plist and .icns files. преди 3 седмици
CatapultWars 856f2ebbbf Fix Info.plists преди 3 седмици
ChaseAndEvade 856f2ebbbf Fix Info.plists преди 3 седмици
Collisions f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Colored3DCube 856f2ebbbf Fix Info.plists преди 3 седмици
CompiledContent 177b9c2f2c Ensure all projects have a .config directory. преди 5 месеца
ContentBuilder d89c07be51 Remove Platform suffixes. преди 3 седмици
Draw2D 856f2ebbbf Fix Info.plists преди 3 седмици
FarseerPhysics 856f2ebbbf Fix Info.plists преди 3 седмици
Flocking 856f2ebbbf Fix Info.plists преди 3 седмици
GameComponents 856f2ebbbf Fix Info.plists преди 3 седмици
GameDevelopmentbyExample 856f2ebbbf Fix Info.plists преди 3 седмици
GameStateManagement 856f2ebbbf Fix Info.plists преди 3 седмици
GooCursor 856f2ebbbf Fix Info.plists преди 3 седмици
Graphics3D 856f2ebbbf Fix Info.plists преди 3 седмици
HoneycombRush 856f2ebbbf Fix Info.plists преди 3 седмици
Input d89c07be51 Remove Platform suffixes. преди 3 седмици
InputReporter d89c07be51 Remove Platform suffixes. преди 3 седмици
LensFlare d89c07be51 Remove Platform suffixes. преди 3 седмици
MonoGame.Xna.Framework.Net b7c3cfe182 Update all projects to use net9.0* преди 1 месец
MultiTouch 856f2ebbbf Fix Info.plists преди 3 седмици
NetRumble d89c07be51 Remove Platform suffixes. преди 3 седмици
NetworkPrediction d89c07be51 Remove Platform suffixes. преди 3 седмици
NetworkStateManagement d89c07be51 Remove Platform suffixes. преди 3 седмици
Orientation 856f2ebbbf Fix Info.plists преди 3 седмици
PacMan f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Particle2D d89c07be51 Remove Platform suffixes. преди 3 седмици
Particle3D 856f2ebbbf Fix Info.plists преди 3 седмици
Peer2Peer d89c07be51 Remove Platform suffixes. преди 3 седмици
PerPixelCollision 856f2ebbbf Fix Info.plists преди 3 седмици
PerformanceMeasuring d89c07be51 Remove Platform suffixes. преди 3 седмици
Primitives 856f2ebbbf Fix Info.plists преди 3 седмици
ReachGraphicsDemo d89c07be51 Remove Platform suffixes. преди 3 седмици
RectangleCollision d89c07be51 Remove Platform suffixes. преди 3 седмици
RenderTarget2D 856f2ebbbf Fix Info.plists преди 3 седмици
RockRain d89c07be51 Remove Platform suffixes. преди 3 седмици
RolePlayingGame d89c07be51 Remove Platform suffixes. преди 3 седмици
Shaders2D f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
ShadowMapping 856f2ebbbf Fix Info.plists преди 3 седмици
ShatterEffect f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Sound 856f2ebbbf Fix Info.plists преди 3 седмици
SpriteEffects c1398cf086 The Great Desktop folder and project rename преди 3 седмици
SpriteFont 856f2ebbbf Fix Info.plists преди 3 седмици
StarWarrior f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
StateObjectWindows f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
StencilsCratersTutorial f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Storage f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Tetris f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
TexturedQuad f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
TiledSprites f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
TouchGesture f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
TransformedCollision f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
UseCustomVertex f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
VideoPlayer f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
VirtualGamePad f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
Waypoints2D f9b2109aca Apparently Segoe Print no longer exist, so using Segoe UI Mono преди 3 седмици
WpfInterop b7c3cfe182 Update all projects to use net9.0* преди 1 месец
.gitignore 1ccaef909f Update shatter effect fx - Model needs replacing (#52) преди 5 месеца
CONTRIBUTING.md aa38e4988a Add contributing guidelines for MonoGame-Samples преди 3 месеца
LICENSE 4c879a400a Add MIT License file преди 3 месеца
README.md ebab8df603 Rename directries to remove Samples. Update README. преди 5 месеца
SamplesContentBuilder.sln 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* преди 6 месеца

README.md

MonoGame Samples

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.


How to Contribute

I welcome contributions to the MonoGame Samples repository! Here's how you can get involved:

  1. Report Issues: If you find a bug or have a suggestion, please open an issue in the repository.
  2. 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.
  3. Improve Documentation: Help me improve the documentation by editing or adding to the README files.
  4. 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.
  5. 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 :)

Quick Links


Game Samples

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.

2D Samples

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.

3D Samples

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.

Networking Samples

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

Miscellaneous Samples

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.