MonoGame.Extended is an open source extension library for MonoGame. It is a collection of classes and extension methods to make it easier to make games with MonoGame. It makes MonoGame more awesome.
We now have forums! Our forums are located on the MonoGame website which you can reach here! Please ask any questions or post about problems or bugs that you have found there!
MonoGame.Extended is a work in progress. New classes are being added almost every day and I'm blogging about them on dylanwilson.net. We have a very early alpha Nuget package released but keep in mind the API is likely to change as the project grows.
MonoGame.Extended is designed to build on top of MonoGame, but may work with XNA/FNA (for now this is not confirmed, but it would most likely require a custom build). Samples and examples of uses for each feature can be found in the Samples.Extended repository; we try to keep these up to date with the current feature list.
Features up to v0.2: (More information can be found at the v0.2 release notes)
- Tile based maps using Tiled (orthogonal only in v0.3, isometric in master)
- Bitmap fonts using BMFont
- Sprites (with SpriteBatch extensions!)
- Input listeners for event driven input handling (Keyboard, Mouse, Touch) (GamePad in master)
- Texture Atlases using the JSON format in TexturePacker
- 2D Camera with pan, zoom, and rotation
- Viewport Adapters for resolution independent rendering
Added in v0.3: (More information can be found in the v0.3 release notes)
- Sprite Animators using texture atlases
- Timers including a continuous clock and a countdown timer w/ event integration
- FPS Counter that is handy for debugging
- Circle primative to complement Monogame's Rectangle
See the How to install MonoGame.Extended blog post. Here's the TL;DR version:
The library is distributed as a NuGet package. Add a reference to your project using the following command:
Install-Package MonoGame.Extended -Pre
The package comes with 2 DLLs:
- MonoGame.Extended.dll
- MonoGame.Extedded.Content.Pipeline.dll
The MonoGame.Extended.Content.Pipeline.dll
is intended to be used with the Pipeline tool. To reference the DLL in the Pipeline tool you'll edit your Content.mgcb
file.
#-------------------------------- References --------------------------------#
/reference:..\..\packages\MonoGame.Extended.0.2.0.0\lib\MonoGame.Extended.Content.Pipeline.dll
If you would like to contribute start with one of the following:
- Your thoughts on what should be included in the library
- Join the discussion on one of the other issues
- Talk about it on your blog or twitter
- Vote on a task in the Trello board
- Create demos and samples using MonoGame.Extended
- and of course, you can fork the project to start making changes
- A clean and consistent API familiar to MonoGame developers.
- It's not a game engine, but extends the framework with code to make games.
- Follows C# coding guidelines.
MonoGame.Extended is released under the The MIT License (MIT).