Interested in using MonoGame. Some questions before I start...

Hi all,

I’ve been doing some research on MonoGame lately. It looks great, and I’m excited to try it out (and probably make the switch from Libgdx for all of my future projects). I know a lot has changed with MonoGame over the past year, so I have a few questions before I get started, as I’m not sure which information I’ve read is up-to-date and which isn’t.

My end goal is to release games on as many platforms as possible, with Windows and PlayStation Mobile being the most important ones. I know PS Mobile support in MonoGame is falling behind a little, so my plan is to write an engine/wrapper that abstracts out the graphics/input/sound details, and then write two implementations for it: a MonoGame implementation and a PS Mobile implementation.

Anyway…

  • Is OpenGL supported across all platforms with MonoGame? I heard XNA uses DirectX, so I’m wondering whether I’ll have to write my shaders in both GLSL and HLSL (meep).

  • What does PS4 development with MonoGame entail? I’m assuming I’d need a PS4 devkit at some point, but is there a way to compile for and simulate a PS4 environment before then?

  • With Microsoft having dropped XNA support, is it still possible to publish MonoGame-made games on XBox Live? (excuse my ignorance, as I haven’t worked with XNA or XBox Live yet)

Thanks in advance.

  1. I believe that MonoGame will translate your shaders for you
  2. I’d like to know this too!
  3. Yes - in fact we’ve just back-ported our game Bopscotch from Monogame (where we wrote it to be cross-platform mobile) to XNA and released it on XBox 360. No word yet from Microsoft on how to release for XBox One; it’s somewhat perverse that it’ll be easier to be out on PS4…!

Here’s some info I know:

  1. opengl is supported on all platforms with monogmae, also when exporting for windows you can choose between opengl and directx
  2. I don’t know much about ps4 development, but you can’t simulate ps4 environment before then. There was a project to create a ps4 emulator at: https://github.com/ghaststeam/PS4EMX but it fell apart
  3. duno

Thanks guys! I like the sound of this. MonoGame, here I come. :smile:

  1. The MonoGame content pipeline will take your .fx shader and convert it to GLSL. We currently use a tool called Mojoshader that does most of this job. What it means for you is that you don’t need to do anything special, except for maybe rewriting some small special cases that Mojoshader might not support, but these are rare and only needed if your shaders fail to build.

  2. You need to be a registered Sony developer to get access to the PS4 port of MonoGame. To develop on PS4 you will need a PS4 development kit from Sony. There is no emulator for PS4.

  3. MonoGame does not support Xbox 360 or XBLIG. Many devs still use XNA 4.0 for their Windows and Xbox 360 projects and MonoGame for their non-Windows projects.