Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

MonoGame - Write Once, Play Everywhere

Our dev world is a big place (Cpt. Obvious here again...). While we might like to stay inside our own little dev world, never leaving our platform of choice, with the rise of others, that might not viable anymore. Yet it would be cool if we could leverage what we already know. To take our C# development experience and use that when developing games for different platforms...

MonoGame - Write Once, Play Everywhere

What is MonoGame?

MonoGame is a free OpenGL implementation of the XNA Framework for MonoTouch, MonoDroid, Mac OS X, Windows & soon Linux. Our goal is to allow XNA developers on Windows & Windows Phone 7 to port of their games to the iPhone / iPod / Android / Mac OS X (visa versa), with minimal hassle.

MOVE TO GITHUB

The latest, and greatest, cutting edge source code for MonoGame can now be found here - https://github.com/mono/MonoGame

If you've never used GitHub before, try out my GitHub Tutorial.

Codeplex will still be our home page, as the discussions forums are excellent, but the code will now be updated over on github, as members of the Novell team are also helping out.

Current Roadmap

  1. Add OpenGL ES 2.0 support so we can use 2048x2048 textures and then have shader support. If ES 2.0 is not found on the device it will fall back to ES 1.1, hence 1.1 working properly before moving onto ES 2.0 support.
  2. Once ES 2.0 with fallback to ES 1.1 is working and appears to be stable we will release MonoGame 2.5.
  3. Once we are happy that 2D is the best it can be we'll add 3D support.
  4. Once 3D support is stable we can then release MonoGame 3.0 Smiley.

image

So are there any samples we can play with on Windows? Yep!

MonoGame-Samples

image

image

And does it actually work? Yep!

SNAGHTML4d9d7f73

Some notes to get the samples running;

  • There are references to the OpenTK framework. I used Nuget and found an "unofficial" OpenTK package that seemed to work okay.
  • The Windows Samples also reference the "Lidgren.Network.Windows" and "MonoGame.Framework.Windows" projects but doesn't include them. So download the source for these from the git page, mono / MonoGame, and replace the broken project references with those.
  • There's a link to the SDL.DLL that might also be broken. That file is also available in the source download in the  \ThirdParty folder.

So a there's a little fixup needed, but once done I was able to compile and run the samples.

What kind of samples are available?

image

imageimageimageimageimageimage

Also available are starter kits too.

image

Finally lets quickly look at the framework itself. This is a complex project...

image

SNAGHTML4da94580

If you're feeling the need, the need to code for different hardware platforms, to write games that use C# and XNA and run in many places, MonoGame might be something you'd like to check out...

Follow the Discussion

  • ArtanisArtanis

    I might be wrong, but doesn't monotouch for iOS/Android cost 400$ for each platform?

    Seems a bit expensive for most starting developers, specially compared to similarly priced alternatives like unity3d that are more mature and can also be coded in C#.

    I do see it as really interesting for MacOS and Linux thought.

    Not trying to flame/bash here, just wondering.

  • It is also worth pointing out that MonoGame enjoys now a very active and vibrant community.   They usually hang out on the IRC server at irc.gnome.org on the channel #monogame.

    In the last couple of months they added the MacOS binding (using MonoMac, our projection to the MacOS APIs) and Android port.   They are now busy adding 3D features to the APIs.

    The MonoGame foundation was also used to build Bastion, a game that runs natively on your browser using the Google NativeClient technology which brought the game at once to Mac, Linux and Windows running on a safe sandbox.

  • Artanis,

    You are correct, MonoTouch and MonoDroid are 400 USD each.  No need to wonder anymore!

    As for Unity, it is a great platform, very mature and a million developers have adopted it as their platform of choice.   Unity is powered by the same Mono engine that powers MonoTouch and Mono for Android.

    Use the tool that is most appropriate for your needs.    For instance, Microsoft recently published the iPhone Kinectimals game on the Apple AppStore and it was powered by Unity3D.   Not surprising, since at least 10% of the top sellers on the Apple AppStore are powered by Unity3D.

  • Artanis,

      To actually start using MonoTouch or Mono For Android, costs you nothing as the trial version, which works with the respective simulator/emulators, is FREE. Only once you are ready to test on an actual device do you then need to pay $400. Xamarin have special offers through out the year too, so look out for those as well.

    MonoGame will be adding ES 2.0 ( shaders, programmable pipeline etc) and 3D support in the new year, and we hope to support PlayStation Suite ( PS3, PS Vita and Sony Tablet and Other Sony certified devices ), when PS Suite ships, hopefully some time in 2012.

    Check here for some MonoGame related videos.

    I might be wrong, but doesn't monotouch for iOS/Android cost 400$ for each platform?

    Seems a bit expensive for most starting developers, specially compared to similarly priced alternatives like unity3d that are more mature and can also be coded in C#.

    I do see it as really interesting for MacOS and Linux thought.

    Not trying to flame/bash here, just wondering.

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.