MonoGame 3.8

MonoGame 3.8 is now available for all!

Thanks to all the hard work from the MG developer community over the last year that made this release possible!

There are some huge changes to MonoGame in this release. For new users we recommend reading our getting started guide when you begin.

For existing MG users please read the what’s new section in the documentation then our migration guide to help ease the transition to 3.8.

As always the more detailed changes can be found in the change log.

Thanks again for supporting MonoGame!


Congrats! MonoGame still going strong after all these years!


Great job! I hope it’ll good to go!


Congrats! I can start on my covid project! :smiley:


Yippie! [The Settlers III if not aware]

I don’t fully understand what the new changes imply but happy to have this!

Keep it rolling guys! holding out from those crap engines and this is my last bastion of hope!


1 Like

Great news!!! Congratulations!!!

1 Like

OMG it finally happened, congratulations!!! :tada::tada::tada:

Now I can finally kickstart my MonoGame career properly, thank you so so much devs for your hard work! :heartpulse:


Congratulations to all maintainers, testers and people writing docs.

We can’t thank you enough for putting so much work in this great framework :bowing_man:

1 Like

the visual studio mac 2019 monogame tvos and android tv project files is missing

how do I create these project

i have installed the mpack from the build server 1641

also the content editor will not work from nugget on Mac
Mac and vs2019 Mac does not support instal from nugget

michael hansen

Awesome, this is amazing news! A massive thanks to everyone on the MonoGame team and everyone else involved to make this happen.

I really appreciate the > 255 shader fix(this will help a lot), so many nice updates and fixes. Can’t wait till you Guys add PS5 and Xbox Series X support down the road.

Again all the best and thanks for the continued support and all your hard work!

Finally, something good in 2020.
Congrats to the team and contributors and thanks for what you give.


Thanks a lot!!

Stupid question.

I have a library that makes it easy to use Dear ImGui in an MVVM way ( One of benefits of this is I have a ImguiHandler.Monogame project which has all the connective pieces to hook Dear ImGui up with Monogame. In order to do that though my .net standard 2.0 library needs access to MonoGame, so I can access Texture2d, SamplerState, and other MG specific data structures.

Right now I have my MG library flagged as preview because it links directly against DesktopGL, which works fine for my very specific purposes.

However, I don’t understand how I’m supposed to allow my library to be renderer/backend agnostic. For example, what happens if someone wants to use this library in an IOS, Android, or UWP product? I assume it won’t work since the library is linked to Monogame.Framework.DesktopGL while the actual game is linked to MonoGame.Framework.Ios. Am I wrong about that?

It seems like MonoGame.Framework.Portable was meant to address that, but that nuget package wasn’t upgraded to 3.8.

Am I missing something about how to generalize this nuget project?

1 Like

If you take a look at the .NET Standard library template, you’ll see it references DesktopGL with <PrivateAssets>All</PrivateAssets>. This is the key to the bait-and-switch method. Although your library references the DesktopGL package, it won’t link with it in a downstream application. When this library is used in a game referencing the iOS package, it will be linked to that one instead.

As long your library doesn’t use any APIs that are specific to DesktopGL (which aren’t too common), then this essentially functions the same as the old Portable package.

I mentioned this to @harry-cpp , but this sort of thing should be in the docs somewhere and maybe even in the 3.7 migration doc. It is going to come up a bunch.


Great news!!! Thanks to the MonoGame community for the hard work to make this release possible!!!

:tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada: :tada:

Going to celebrate with an iced coffee as its really hot today :sweat_smile: :sunglasses: :partying_face:


Thanks, I had no idea of that feature in csproj/nuget declarations. Since I use Rider and not Visual Studio I hadn’t even attempted to look at the .net standard template.

The templates are available for Rider IDE as well, check out the setting development environment for windows docs.


I stopped using MonoGame at v3.6 (no more free time…), maybe it’s time to come back and play with MonoGame again! :smiley:

1 Like