Some Conceptual Questions

Hi. I want to port a huge, 3D XNA 4.0 game to Monogame. I’ve tried porting twice before years ago with disastrous results. I am not interested at all in mobile or web. I want to port to OSX/Linux, and develop for Windows, OSX and Linux simultaneously. I have some conceptual questions which aren’t really adequately covered by the documentation.

  1. What is the latest version of the framework? 3.2? Or is is assumed that I’m pulling from source? Is Develop3d still a thing?
  2. I’ve seen all kinds of branches with very nice and obvious features (SDL, fullscreen (?!)) but these aren’t part of the main branch? I definitely want to be able to play compressed audio and use windowing (who would have thought). What branch should I use for these basic features?
  3. The most important conceptual question: how is cross-platform development done? Is is A) I have to create totally seperate development environments in Windows, Linux and Mac on Visual Studio, MonoDevelop, and Xamarin, or B) Do I develop entirely on one platform (hopefully Windows), and export to the other platforms later? The latest samples seem to imply that (B) is the correct solution, as it has a bunch of different .sln files for each platform, and #ifdefs. But this can’t possibly be the case for Mac, can it?
  4. Does Monogame work with Visual Studio 2013?
  5. Is Monogame now SDL based, or is it still using OpenTK?
  6. Is MojoShader still being used, or has it been ported to GLSL already?
  7. Are the following features now supported (which weren’t a year ago): 3D sound, TexCube in shaders, Antialiasing, “Song” loading, and Hardware Instancing?


@3 well, i have not ported my project so far to more plattforms, but i think it shall be easy.
@5 i am using MonoGame on WindowsGL and OpenTK is still in use there.