mogate stands for MonoGame test application. It is simple game primary developed for educational and technology research reasons.

The achieved goals and results as follows:

  • Monogame framework perfectly fits to cross-platform development. All game code is located inside shared project and the same for Windows, Mac and iOS platforms.
  • The most hard part was iOS support due to multitouch support, binary plist format and device orientation bug. CocosSharp was used to help with plist and device orientation bug while multitouch support was written from scratch. Internal gestures helpers do not fit to the game input.
  • For shaders compilation Windows system is still needed and compiled shaders have to be loaded manually.
  • Development approach based on generalized behavior and actions are hard to master but really makes game logic development very easy. It allows to think on not what to do but on how it should work. This functional approach generates highly reusable code that very easy to tweak and extend.

Here is the screenshot from game session: