Getting started and the different project templates


I’ve recently been contemplating moving to MonoGame after becoming frustrated at OpenTK’s lack of touch input.

With that said, I installed MonoGame through NuGet inside of Xamarin. Upon creating a new solution I see all the new pretty MonoGame templates.

At first I was thinking of creating an OpenGL project, as it seemed like the cross-platform thing to do. The project created, downloaded/updated a file, and was all ready to go. First things first, did a full build, then tried to run the program, and it failed. Couldn’t find SDL.dll… Boo! Looked in the config files and they reference SDL_1_2*. Is the OpenGL version of MonoGame outdated or not used. Should I use the DirectX MonoGame template (it worked on my Windows machine). Isn’t the DirectX template only usable on Windows?

Is it ok to just download SDL.dll and include or should MonoGame have come with it?

In the newest development builds of MonoGame sdl is completely replaced with NVorbis and OpenAL, so technically it’s already fixed.

Fixed is good. Is it just a matter of waiting until the updates are available via NuGet then?

I’m guessing that the DirectX project template is only for windows and that I’ll need the OpenGL version?

I just downloaded MonoGame from the git but I’m unsure where to start to even build it…

Next MonoGame release is in around 2 weeks.

At this stage the starting template doesn’t matter, both OpenGL and DirectX templates are Windows only, there are seperate templates for Linux and Mac, WindowsGL Linux and Mac will get merged into one template which will create a game that runs on all 3 platforms, should be ready for 3.5 or 3.6 release.

If you just want the development installer it’s already connected to the site under:

Hmm, maybe I thought it worked differently…

Does it not work that I can make a project and MonoGame does all the window creation behind the scenes regardless of OS? Or do I have to separately create projects for each OS I want to support and reference their corresponding MonoGame framework dll?

Currently each system has it’s own dll, I am in the process of making one dll that will work for both WindowsGL and Linux, and later Mac will get added as well, but not by me: