GithubHelp home page GithubHelp logo

MonoGame

MonoGame is a simple and powerful .NET framework for creating games for desktop PCs, video game consoles, and mobile devices using the C# programming language. It has been successfully used to create games such as Streets of Rage 4, Carrion, Celeste, Stardew Valley, and many others.

It is an open-source re-implementation of the discontinued Microsoft's XNA Framework.

Join the chat at https://discord.gg/monogame

Build Status

We use GitHub Actions to automate builds and packages distribution of the latest MonoGame changes. We also rely on a build server to run tests in order to avoid regressions. The table below shows the current build status for the develop branch.

Name Status
Builds Build

Supported Platforms

We support a growing list of platforms across the desktop, mobile, and console space. If there is a platform we don't support, please make a request or come help us add it.

  • Desktop PCs
    • Windows 8.1 and up (OpenGL & DirectX)
    • Windows Store Apps (UWP)
    • Linux (OpenGL)
    • macOS 10.15 and up (OpenGL)
  • Mobile/Tablet Devices
    • Android 6.0 and up (OpenGL)
    • iPhone/iPad 10.0 and up (OpenGL)
  • Consoles (for registered developers)
    • PlayStation 4
    • PlayStation 5
    • Xbox One (both UWP and XDK)
    • Nintendo Switch
    • Google Stadia

Support and Contributions

If you think you have found a bug or have a feature request, use our issue tracker. Before opening a new issue, please search to see if your problem has already been reported. Try to be as detailed as possible in your issue reports.

If you need help using MonoGame or have other questions we suggest you post on our community forums. Please do not use the GitHub issue tracker for personal support requests.

If you are interested in contributing fixes or features to MonoGame, please read our contributors guide first.

Subscription

If you'd like to help the project by supporting us financially, consider supporting us via a subscription for the price of a monthly coffee.

Money goes towards hosting, new hardware and if enough people subscribe a dedicated developer.

There are several options on our Donation Page.

Source Code

The full source code is available here from GitHub:

  • Clone the source: git clone https://github.com/MonoGame/MonoGame.git
  • Set up the submodules: git submodule update --init
  • Open the solution for your target platform to build the game framework.
  • Open the Tools solution for your development platform to build the pipeline and content tools.

For the prerequisites for building from source, please look at the Requirements file.

A high level breakdown of the components of the framework:

Helpful Links

License

The MonoGame project is under the Microsoft Public License except for a few portions of the code. See the LICENSE.txt file for more details. Third-party libraries used by MonoGame are under their own licenses. Please refer to those libraries for details on the license they use.

MonoGame's Projects

assimp icon assimp

Official Open Asset Import Library Repository. Loads 40+ 3D file formats into one unified and clean data structure.

assimpnet icon assimpnet

GitHub mirror of https://bitbucket.org/Starnick/assimpnet/

cppnet icon cppnet

Quick and dirty port of jcpp to .NET, with features to support Clang preprocessing

freeimage icon freeimage

Git mirror of http://freeimage.sourceforge.net/

glsl-optimizer icon glsl-optimizer

GLSL optimizer based on Mesa's GLSL compiler. Used in Unity for mobile shader optimization.

mojoshader icon mojoshader

Fork of icculus's HLSL Bytecode -> GLSL translator with tweaks for MonoGame

monogame icon monogame

One framework for creating powerful cross-platform games.

monokickstart icon monokickstart

Kick start executable for running stand-alone distributed Mono applications

mva icon mva

The code for our Microsoft Virtual Academy presentation.

openal-soft icon openal-soft

A software implementation of OpenAL used in MonoGame on Android.

opentk icon opentk

This Open Toolkit library is a fast, low-level C# wrapper for OpenGL and OpenAL. It can be used standalone or inside a GUI on Windows, Linux, Mac, Android and iOS.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.