Finding a decent UML modelling tool is pretty difficult, and they’re often quite heavyweight programs with a whole bunch of features. Sometimes you just want to quickly make a little UML diagram to explain a concept, or quickly create an image of a simple diagram you have on paper, and installing a huge piece of …
Category Archive: Programming
Feb 16
Calculating the Number of Divisors
Introduction Calculating the number of divisors for a number is a fairly simple task in programming, it can be achieved with the following simple code: const int number = 50; // The number for which to count the divisors of int count = 1; for ( int i = 1; i <= number / …
Dec 31
Generating a Maze
When I was coming up with ideas for my Christmas game this year, I ended up thinking of one that would work best with procedurally generated (i.e. generated using a particular algorithm, but using randomly generated numbers etc. for content). This post shows some of my ideas and techniques for creating such a system, and …
Sep 07
TurretDefence Early Preview (0.0.1)
I’m currently working on a project (working title: TurretDefence) in which the player must protect a lone turret from being destroyed, and defeat all the incoming enemies. The tricky part is, however, there are no in-game controls. The player must edit the AI of the turret, using a script file that the game loads at …
Jul 25
PurpleEngine Released!
While at university I used an engine created to help beginners learn game programming, that was designed to be able to make 3D games very easily with little knowledge of how things are working. It was a great engine, but as I have bit of a passion for 2D games, I decided to attempt to …
May 11
Patching Up with Git
Often when you work on other people’s code, or work with code in groups, it’s not a good idea to commit to the main repository. If not for any other reason, just so you don’t piss off the person who’s running the project. That definitely doesn’t mean that you shouldn’t work on their code, though. …
Apr 19
Make More!
I’ve already written about using make files to compile programs, but only briefly. This little tutorial should expand on enough for you to be able to use make files yourself. If you haven’t already then read this first. As explained in the previous post, a make file is pretty much just a set of instructions …
Mar 08
Pointing at Things That do Stuff!
… that is, pointing at functions. Introduction Pointers in C++ are probably one of the most powerful aspects of programming using the language. They can allow you to easily pass data around with using additional memory and provide a very efficient way to access variables from elsewhere in the program. But, that’s not all they …
Feb 19
Organising Classes
This tutorial explains how classes should be organised in separate files and what the benefits of this are. The Vector class from the previous tutorial is used, if you haven’t read it you should go there first: link. Introduction As discussed in the previous tutorials classes are a very useful part of programming in C++. …
Feb 09
Vector Class
This tutorial shows how to create a basic vector class for vectors in C++. If you haven’t already, read the previous tutorial about the basics of classes here. Introduction Vectors are very important in many computer programs involving graphics, and are especially crucial in games. Having a vector class makes them easier to use and …


