A Collection of MonoGame Samples

Dominique Louis 74e2ba0930 Remove IAsyncResult pattern and replaced with modern equivalent. 4 هفته پیش
2DShaderSample 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
AdMob 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
Aiming 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
Audio3D 686484dc50 Audio3D - Revert Package References to something more generic. 1 ماه پیش
BackgroundThreadTester 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
BatteryStatus 154ccc36e5 Better Way of having platform specific Battery Info. 1 ماه پیش
BloomSample 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
BouncingBox 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
CardsStarterKit efb618b3f5 Remove Width and Height Scale, as that is all handled by GlobalTransformation now. 1 ماه پیش
CatapultNetWars 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
CatapultWars 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
ChaseAndEvade 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
CollisionSample 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
Colored3DCube 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
CompiledContent 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
Draw2D 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
FarseerPhysics 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
Flocking 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
GameComponents 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
GameDevelopmentbyExample 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
GameStateManagement 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
GooCursor 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
Graphics3DSample 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
HoneycombRush 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
Input 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
InputReporter 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
LensFlare 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
MonoGame.Xna.Framework.Net 243801e65d Add Fixes to support Lobby transitions. 4 هفته پیش
MultiTouch 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
NetRumble 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
NetworkPrediction 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
NetworkStateManagement 74e2ba0930 Remove IAsyncResult pattern and replaced with modern equivalent. 4 هفته پیش
Orientation 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
PacMan 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
Particle3DSample 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
ParticleSample 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
Peer2PeerSample 7a9b47b60d Reset packetWriter.Position, so positions are mirrored across peers. 4 هفته پیش
PerPixelCollisionSample 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
PerformanceMeasuring 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
Primitives 177b9c2f2c Ensure all projects have a .config directory. 1 ماه پیش
ReachGraphicsDemo 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
RectangleCollisionSample 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
RenderTarget2DSample 4d66891287 Ensure all Android entry points are called MainActivity 1 ماه پیش
RockRain 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
RolePlayingGame 06170ac625 Tweak Collision layer in Map002 and 3. Add Android/iOS VSCode launch items. 1 ماه پیش
SamplesContentBuilder e119c561c9 Update README to table. Added splash.png 1 ماه پیش
ShadowMapping 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
ShatterEffectSample c0debecc71 Add PrivateAssets to Processory library. 1 ماه پیش
Sound 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
SpriteEffects 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
SpriteFont 8c10312e56 SpritFont - Refactor to build on iOS. 1 ماه پیش
StarWarrior 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
StateObjectWindows 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
StencilsCratersTutorial 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
Storage 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
Tetris 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
TexturedQuad 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
TiledSprites 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
TouchGesture 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
TransformedCollisionSample 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
UseCustomVertex 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
VideoPlayer 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
VirtualGamePad 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
Waypoint 5a1fb288f4 Ensure all Core files have PreserveAsset set to all. 1 ماه پیش
WpfInteropSample 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش
.gitignore 1ccaef909f Update shatter effect fx - Model needs replacing (#52) 1 ماه پیش
README.md 0a44287ef9 Add Note about Networking not working. 1 ماه پیش
SamplesContentBuilder.sln 787aa50223 History Reset and Projects updated to SDK and MG 3.8.* 1 ماه پیش

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.
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
2DShaderSample 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.
CatapultWars Classic catapult game mechanics.
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.
ParticleSample Particle systems and effects.
Primitives Drawing primitive shapes (lines, points).
RectangleCollisionSample Rectangle collision detection.
RenderTarget2DSample 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.
BloomSample Bloom post-processing effects.
Colored3DCube Renders a colored 3D cube.
Graphics3DSample Advanced 3D graphics techniques.
LensFlare Lens flare post-processing effects.
ReachGraphicsDemo Demonstrates Reach profile graphics features.
ShadowMapping Demonstrates shadow mapping techniques in 3D.
ShatterEffectSample 3D shatter effect demonstration.

Networking Samples (NOT WORKING until MonoGame.Xna.Framework.Net is fully implemented)

Project Description
CatapultNetWars Networked multiplayer catapult game.
MonoGame.Xna.Framework.Net Networking API compatibility sample.
NetRumble Networked multiplayer space shooter.
NetworkPrediction Networked gameplay prediction and synchronization.
Peer2PeerSample Peer-to-peer multiplayer tank game.

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.
SamplesContentBuilder 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.