Programming

In this major section I will be mostly talking about programming basics, programming for games and some engine or tools programming.

C++

Most games are written in C++ and in this section you will find a lot about writing your own projects in C++ from the project structure and dependency management to using ready made engines or building your custom engine.

ANSI C

ANSI C is mostly used for building libraries and system programming but you can easily write games in C too. Most low level libraries are written in C and there are some easy ones like raylib that you can use to create games. It is a lot simpler than C++ and you can start from here.

CMake

I have a lot of tutorials on CMake for managing your builds. It can be used with both C and C++ so it has its own section.

Notations

Before we begin with the more complex stuff I want to note on the different coloring sections that you may notice along the way in this section.

Notes

Notes are distinguishable by the thick orange line on the left of the note.

This is a quote. I would mainly use it to cite something, to make a side note, to mark next good reads, etc.

Note: Comments will use this style too

Code

Code will be distinguishable by a thick blue line on the left and a gray background. The font used inside of the code block is also monospace to keep things nice and clean.

#include <iostream>

int main() {
// This is a code block
// It will contain code examples that are easy to copy
// It also has syntax highlighting
return 0;
}

Notes and comments can also contain code inside. You will also notice that the font I use uses programming ligatures which would affect how some combination of characters are shown like the double == and arrows ->, =>

An example of ligatures would be double equals which produces a longer equal == (compared to =) and the arrows ->, => ...

Mathematics

Math formulas will have a thick black line on the left and a gray background. It can also be distinguished by the styling of the formulas inside.

$z = \overbrace{ \underbrace{x}_\text{real} + i \underbrace{y}_\text{imaginary} }^\text{complex number}$

Other preformated content

Other special content will be marked with a block that has a thick brown line on the left and a gray background. These will usually be folder structures.

This is an example of another preformated content.

Other content

You will notice that on certain posts and pages that I link to websites where you can compile, edit and run my examples. These example are currently run through the repl.it site and will look like this:

You will notice that repl is split into two main parts: source code (top) and terminal (bottom). When you click the green play button above the source code in the center the code will be compiled and played in the terminal bellow where you can see the result. When applicable you can use the “Files” icon on the left to see other files in the example repl. You can edit the repl as much as you want it will clone it for you and you can use it to test some changes or even delete everything and create a game engine 😉