Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am currently thinking about porting a XNA game to other platforms using MonoGame. Do I understand this correctly that I can expect the game to render faster even under Windows 7 due to the use of SharpDX?

share|improve this question

It's impossible to tell what performs better - as they are both different implementations of a given API set on all different platforms. If you are talking just strictly Windows, there's a few benchmarks you could run by but from personal experience I can tell you that MonoGame has some issues on certain features that will cause slow downs - but overall performance is good.

share|improve this answer
What are those features that - in your experience - cause slowdowns? – ares_games Feb 9 '13 at 1:15
I had some issues with certain platforms - like Android and iOS which suffer from some garbage collection issues and the like in some cases. (I had a real major issue with particle systems...) what platform are you interested in on it? – Vaughan Hilts Feb 9 '13 at 3:41
I am targeting Windows (XP, Vista, 7, 8 Metro), OSX and Linux for now. I think I would need major changes to get the game running on Phones or current Tablets, so I am focussing on workstations. – ares_games Feb 9 '13 at 12:47

If your game is fast with XNA it will be as fast with MonoGame. When I did a conversion of my game with a help of MonoGame, the conversion itself (+tests) helped to find places to improve the speed and eliminate some wasteful cycles. You can expect the final size of your app to be 3-4 times bigger than with XNA.

share|improve this answer
Did you port your app to Windows 7 or Windows 8 ? – ares_games Feb 9 '13 at 2:15
3-4 times bigger? Due to code or the extra external references? – JimmyBoh May 10 '13 at 14:10

Most of the performance issues I have encountered while using MonoGame are related to unnecessary garbage generation. A lot of these are fixed from time to time but I wouldn't rely on MonoGame to be more performant than XNA as of yet.

It is still valid that if you are targeting any of the platforms that XNA supports and do not require the use of DX11 features, you SHOULD stick to XNA. For any other platform, if you run into performance problems using MonoGame, profile your game and try to find a workaround for the part that is causing slowdowns. Even better, get into MonoGame source yourself, fix whatever problems you find and submit a pull request. This way everyone wins!

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.