C++ Fast Track for Games Programming Part 8: Memory Addresses

C++ Fast-track

C++ Fast-track for Games Programming Part 8: Addresses

One of the harder concepts in C++ is the concept of pointers. Pointers have everything to do with the very nature of the language: C++ gets you pretty close to the hardware you are working with, and one of the most important parts of that hardware is memory. In this tutorial, you will learn to use pointers to refer to memory addresses.

Continue reading

C++ Fast Track for Games Programming Part 7: Debugging

C++ Fast-track

C++ Fast-track for Games Programming Part 7: Debugging

This episode covers debugging. We will see how an application can be halted at any time or at a specific line and how we can inspect variables to verify that everything works as intended. Debugging can be a complex process but we’ll limit ourselves to the basics of breakpoints and following program flow, while keeping an eye on variables.

Continue reading

C++ Fast Track for Games Programming Part 5: Conditions

C++ Fast-track

C++ Fast-track for Games Programming Part 5: Conditions

This tutorial is about the condition commands C/C++ has which allow you to make automated decisions in your program. You already used conditions when you did loops (perhaps without realising it), but in this episode we will look at more explicit conditions.

Continue reading

C++ Fast Track for Games Programming Part 4: Sprites and Loops

C++ Fast-track

C++ Fast-track for Games Programming Part 4: Sprites And Loops

This tutorial is about two things: sprites and loops. Sprites will get you on your way to making interesting stuff move on the screen, whereas loops will help you write less code to do more. On with the show!

Continue reading

C++ Fast Track for Games Programming Part 3: Variables and Functions

C++ Fast-track

C++ Fast-track for Games Programming Part 3: Variables

The previous tutorial introduced you to the template. You can now draw some lines and print some text in all kinds of colours, but that’s clearly far from the goal of making actual games, where bullets wizz past in glorious 3D and enemies flank you in the smartest ways. To get a bit closer to that, we’ll take the static coordinates from last time and make them a bit more flexible by using C++ variables and functions. We’ll need that for the next part, which is all about loops, sprites and other bouncy things.

Continue reading

C++ Fast Track for Games Programming Part 2: The Template

C++ Fast-track

C++ Fast-track for Games Programming Part 2: The Template

As you noticed in the first article, setting up a project in Visual Studio can be quite a task. And we didn’t (nearly) touch all the settings that you can adjust for a project either. To make your life a bit easier, we will use a project template from now on. This template is simply a directory that contains all the files that you need, with all the settings tuned just right for the kind of programs that we will be building in this series. The template also contains a bit of code that you need for most projects, so that you don’t have to type it yourself. This code aims to take away the platform specific things from you; i.e. it opens a window, lets you draw to it, and updates it for you. Sounds simple, but really it isn’t. Windows operating system can be quite a nightmare to deal with properly, and since that’s just not the core of game development, we felt it’s best to take care of that once and for all. The result is the template.
Continue reading

C++ Fast Track for Games Programming Part 1: Getting Started

C++ Fast Track

C++ Fast Track for Games Programming Part 1: Getting Started

Welcome to the first article in the Programming C++ Fast Track tutorial series! These tutorials are designed to take you from zero to a decent entry level in a somewhat smooth fashion. We start at the absolute basics: all that you need to get started is a laptop or PC, a fair bit of time, and quite a bit of dedication.

Continue reading

CMake in Visual Studio 2017

CMake in Visual Studio 2017

CMake in Visual Studio 2017

Visual Studio 2017 introduces the ability to open CMake projects directly in the Visual Studio development environment without the need to generate any project files first. In this tutorial, you will create a simple project that uses CMake to define the project configuration. You will also create several build configurations for the application. You will also create launch configurations to determine how the application is executed for debugging the application.

Continue reading

Using Dynamic Link Libraries (DLL) to Create Plug-Ins

Dynamic Linking Library

Dynamic Linking Library

In this article I will describe how to use Dynamic Link Libraries (DLL) in your own projects. I will show an example of how to define a DLL that is statically linked at compile-time to support implicit loading of the DLL at runtime. I will also show how to to use explicit DLL loading to allow your project to support plug-ins that can be dynamically loaded into your main executable at run-time. For this example, I will use Microsoft’s Visual Studio 2008 as the programming IDE.

Continue reading