Multiplatform Development - Is it Possible?

Hi everyone,

I have recently discovered Monogame and I was very pleased that I could run it and develop on both Linux and Windows 7. This is a huge bonus for me since I use both operating systems quite often (Ubuntu on my laptops and Windows on my desktop). Not only do I wish to develop for both Linux and Windows - I would also like to develop the same project simultaneously in both environments. However, I have already run into several issues when attempting to develop and convert projects between systems with Monogame.

An official Monogame video suggested that I should be able to debug Linux games in Windows, which I thought would solve most of my issues (develop for Linux, port to Windows later), but this does not appear to be the case (none of my Linux projects are able to debug in Windows in Visual Studio OR Xamarin/Monodevelop).

So my question is this: do any of you develop with Monogame concurrently in Linux and Windows? Even if you do not, do you know how this might be achieved with as little headache as possible?

I develop on Windows, Linux and Mac to ensure that the game consistently works across all platforms, all the time.

I use Visual Studio on Windows, Xamarin Studio on Mac and MonoDevelop on Linux. Generally I find on Linux one has to use the very latest version of Mono, as that contains some fixes for pthread (but it depends on whether you’re using threads in your game).

I built an engine called Protogame (on top of MonoGame) which abstracts content compilation away into an asset concept. Protogame handles performing content compilation on the appropriate platforms (Windows and Linux) transparently, without requiring IDE support.

For an overview of how Protogame’s asset compilation works transparently, there’s a diagram available at http://protogame.org/docs/asset_management.html. The tutorial on rendering a texture has a good overview of how to add new content to a Protogame-based game as well: http://protogame.org/docs/render_textures.html (it basically boils down to put PNG or other source asset in content folder and run the game).

There’s more documentation via the “Documentation & Tutorials” link on those pages, and you can download via the “Download” link on those pages (the forum is preventing me from adding more than 2 links).

1 Like

Awesome, Protogame looks like exactly what I need! I appreciate the information, I hadn’t run across it before. Should suit my needs just fine. Cross-platform development, here I come!

@hachque I just posted a question here about cross-platform development. I would appreciate any insight you could share on this.

If you are looking for libraries that help you speed up the dev time then you need to check this out: https://github.com/Murii/Flixel-Monogame . It handles 2d collision detection entity sistem,tile maps.And much more