Skip to content

Latest commit

 

History

History
94 lines (58 loc) · 5.36 KB

README.md

File metadata and controls

94 lines (58 loc) · 5.36 KB

MonoGame.Extended Logo

MonoGame.Extended

It makes MonoGame more awesome.

Join the chat at https://gitter.im/craftworkgames/MonoGame.Extended

Build Status

MonoGame.Extended is an open source extension library for MonoGame. A collection of classes and extensions to make it easier to make games with MonoGame.

Forums

We now have forums! Our forum is part of the MonoGame community. Please ask any questions or post about problems or bugs that you have found there. Let us know if you're making a game with MonoGame.Extended!

Development status

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.

Usage

MonoGame.Extended is a portable class library designed to build on top of MonoGame. It may work also with XNA/FNA (not confirmed) and it should work on other platforms like Xamarin Android or iOS. If you do use it on another platform please let us know!

Samples and examples can be found in the Samples.Extended repository; we try to keep these up to date with the current feature list as much as possible. Contributions are welcome.

How to install

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

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 need to edit your Content.mgcb file as follows.

#-------------------------------- References --------------------------------#
    
/reference:..\..\packages\MonoGame.Extended.0.4.64\lib\MonoGame.Extended.Content.Pipeline.dll

Note: Be sure to check that the version number in the path matches the version you're using!

Features

Features up to 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: (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

Added in v0.4: (release notes)

  • Tiled Map Renderer - now uses a render target to eliminate tearing
  • Sprite Sheet Animations - created with the Astrid Animator prototype
  • Simple Collision Detection - experimental
  • Bug fixes - with relative assets in the content importers and a few other minor bug fixes

Contributing

If you would like to contribute start with one of the following:

  • Please post your thoughts on our new forum
  • Join the discussion on one of the issues. We often use github issues to discuss new features as well.
  • Talk about it on your blog or twitter
  • Create demos and samples using MonoGame.Extended
  • and of course, you can fork the project to start making changes

Design goals

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

License

MonoGame.Extended is released under the The MIT License (MIT).