If you have never programmed games before and would like to try it then perhaps this post can help you get a foot in the door.
The game platform that is presented in this article is called MonoGame, and the examples are written in C#.
Quoting MonoGames description:
MonoGame is an Open Source implementation of the Microsoft XNA 4 Framework. Our goal is to allow XNA developers on Xbox 360, Windows & Windows Phone to port their games to the iOS, Android, Mac OS X, Linux and Windows 8 Metro. PlayStation Mobile, Raspberry PI, and PlayStation 4 platforms are currently in progress.
Lets start off by showing off some code that moves a spaceship on the screen.
Download the example C# project here.
The MonoGame architecture is a very simple one, the engine will call Update and Draw on your game object, passing game time details. Intern, your code can delegate the Update and Draw to its game components. Each game component can decide how to draw its self and how to transform its self. The game time provides accurate details of the elapsed time since the last call, and using this you can provide a smooth game play, regardless of machine performance.
So, how to get started?
- First your going to need Visual Studio.
- Download and install the latest version of MonoGame
- If you have Pluralsight access I can recommend Cross Platform Game Development with MonoGame by John
Sonmez and Introduction to 2D Game Programming with XNA by John Sonmez
- Search YouTube for XNA tutorials, there are plenty to choose from.
Even if you don’t have Pluralsight access, they do offer some free hours to try it out.
2D MonoGame is the recommended starting point when learning. After you have a grasp on how to display sprites, how to play sounds and monitor the input devices, the rest is just plain business logic.
Recreating old games can be really fun. They tend to be fairly easy to re-create and of course you can analyse them and get reference material by using an emulator.
If you are after gaming reference material, then the unity asset store is worth a look. They have a lot of sound special effects material and 2d textures, but typically its not free but reasonable priced.