Beginning Video Game Programming

Video game programming is the main goal of many beginning programmers, but creating a game takes a lot of hard work and dedication. It’s very common for someone to become discouraged with video game programming and give it up before fully realizing their dream video game come true. Even more common is for someone to never even know how or where to begin programming video games and give up entirely too early.

In this guide, I’ll teach you what you need to know, what you should have before you begin programming video games and what to do after you have everything you need.

Choose Your Language

Before you start programming your first video game, of course you need to pick what programming language you’ll be using.

C++ is currently the most used language in the video game industry but that doesn’t mean you have to use it. You can make a game in many other languages such as C#, Java, Python, C and many others.

Be sure to look a lot into which language you’ll be using as it will determine much about your future as a video game programmer. For example, if all you know is Python and you want to work for a video game company that only uses C++, then you’re going to find it hard to get hired.

Always remember that no matter what language you start out with, you can always learn more later. Many video game programmers will be fluent in at least two to three languages.

Learn Your Language

Before you start programming a video game, you need to know your language, and I mean really know your language. Being completely fluent isn’t required, but it would be incredibly helpful.

Some languages you’ll be able to get by with knowing less than with some other languages. With Visual Basic for example, you could stumble through making a game from just looking things up and reading a little when you need it (However, the game won’t be that good, trust me), but you could never do such a thing with a language like C++.

Get The Right Tools

After picking the language you’ll be using you’ll need to get an IDE (Integrated Development Environment) or a compiler that works with your language.

It would also be of great help to get a library to handle certain things such as graphics, sound, etc. An example of a useful library like this is SDL (Simple DirectMedia Layer).

SDL can be used with C, C++, Python, Perl, and many others. SDL is a multimedia library that helps you handle various things when programming your game, such as images, networking, sound and music and animation.

Another popular set of tools to use is Microsoft’s XNA, which is incredibly easy to use and can help you make a good game very quickly, but it can only be used with C# and only on Windows. Also funnily enough, XNA stands for XNA is not an acronym.

Another option would be to get a pre-made engine. These can range from just graphics engines such as OGRE (Object-oriented Graphics Rendering Engine) or complete game engines such as Unreal Engine or Unity. A complete engine would be your best bet for making a really good game quickly, but these can cost a pretty penny for licensing if you plan to sell your game.

Start Making Your Game!

After you’ve learned a programming language and gotten the necessary tools you can begin making your first video game. Start with something small, like a Tetris clone and work your way up to a 2-D platformer and eventually you’ll be able to start making 3-D games as well.

Don’t get caught up too much in creating your dream game just yet, it’ll come with time, but you need to learn the basics and get more experience with video game programming before making anything extravagant.

Now What?

After you’ve made your first few games you can put them into a portfolio to show if you ever plan on getting a job in the video game industry, or if you’ve made a game you really think you can sell then you can either distribute it yourself online or you can try to get it published. The choice is up to you.

Good luck, and happy coding!

Leave a Reply

Your email address will not be published. Required fields are marked *