Astro Ducks - A Complete Game Project

While there are a lot of good tutorials online on various aspects of game development, I found few that illustrated a full game with a good description on all the parts. That is why I decided to try and make one myself. I belive making a full fledged game of your own will make you in general a better developer and in particular a better game developer. Why? Because the devil is in the details. While it is great to learn specific subjects from smaller tutorials, it can be challenging to put them all together into a game. I would recommend starting with a couple of basic and advanced OpenGL tutorials before reading this as I will assume you have a working knowledge of OpenGL and C++ already.

This blog covers an asteroid-like game with a few tweaks. It is written in C++ 14 and uses OpenGL and GLEW. The purpose of this blog is to illustrate a couple of different techniques common to many top-down games and to how to tie they them all into a game. This project is still under development and more things will be added to it going forwards.

Table of content

The full source code of the project is available at gitlab here

A playable version of the game for Windows can be downloaded from itch here

Other projects

Music-streaming using TCP/IP

A video tutorial covering how to write a server/client solution that allows you to stream music from a server to a client and play back the audio as it is being downloaded.

The source code for the music streaming project can be found here

Fishmarket running on LAMP-stack

A video tutorial covering how to setup a LAMP-stack, creating a MySQL database and using PHP to insert and display orders for a fishmarket

The fishmarket can be tested out here here, source code can be found here

Multiplayer TCP/IP

Work in progress! This version sends the servers boat position to the client.

source code is available here

PBR Model Inspector

A binary for windows can be downloaded here. There is also a tutorial in the "Physically based rendering" section.

Omnidirectional shadow mapping

A work in progress version of the source code can be found here, please note that this is still a work in progress.

You can also download a binary for windows to try out the shadow mapping at here

Data-oriented design

A video covering basic data-oriented design principles and how they can be applied for collision detection in a game