Self-development

Starting Game Programming with C++

Disclosure: This post may contain affiliate links, which means we may receive a commission if you click a link and purchase something we have recommended. Purchasing via these links WILL NOT cost you any extra money. They will, however, help us keep this site up and running!

It’s been a while since I last wrote a blog post, but I have a really good reason for that. This month Load Last Save has officially become a company! Besides the blog, the company will start to offer educational content and creating electronic products such as books.

My passion has always been games, and that is why I decided to start to develop the education offering with a gaming angle. To achieve this, I’ve been studying the C++ programming language. Previously I have almost exclusively programmed in Python, so C++ syntax is new to me. That is why it was important for me to find an easy and stripped down guide to follow. I found this in Michael Dawson’s book Beginning C++ Through Game Programming. I’ve mostly been studying programming with interactive materials like Codecademy, because books are usually a bit harder to go through. However, Dawson’s book is different. If you are a gamer like me, you will find familiar mechanics even from the first chapter ‘s text-based adventures.

Beginning C++ Through Game Programming

The book is structured so that each chapter introduces one new programming concept. All the programming exercises have been made into games varying from tic-tac-toe to blackjack. It feels more refreshing than the repeating exercises in many programming books I’ve tried. Each chapter of the book has its own game project that builds on examples introduced earlier in the chapter. This is definitely a technique I want to utilize in my own material as well, as unrelated exercises can easily demotivate the learner.

All programs in the book are first introduced by showing the full code. This is a good thing because if the reader feels like they have fully understood the code, it is easier to skim through the explanations for anything they might have missed. After the full code, the author goes through it line by line, explaining what a bit of code does and why a programmer might make such a choice in their program. There are also illustrations about some concepts, like how pointers work and what objects are.

The reality of programming is that there are always iterations to make the end product better. In Beginning C++ Through Game Programming the games built in previous chapters are in many cases developed further with more sophisticated techniques as the reader’s knowledge of the C++ language increases. There are also bits of information about the real world and how programmers commonly use the tools and concepts introduced by the author. This gives the book credibility, as not everything always goes by the book.

Next steps

The book does a great job at introducing the basic concepts of the C++ language. However, it does not cover how games with graphics are made. That is something I will need to get my head into next if I want to create engaging material. After all, most people relate with graphical user interfaces instead of programs run through the terminal. For this, I am looking into Unity and JavaScript development. I will be posting my progress on those in the near future.