Main Project

Outdoor - Showcase

Time: 2024

Creating an interactive and simulated urban city is often regarded as one of the most challenging tasks in game development, but I am determined to tackle it. To achieve this, I developed a tile-based terrain system and a spline-based traffic system, utilizing instanced geometry to efficiently render approximately a thousand individual vehicles. Additionally, I implemented a crowd animation system for distant pedestrians, converting continuous animations into discrete frames, effectively creating stop-motion animations. This technique allows frames to be stored as baked meshes, significantly reducing CPU stress. It is akin to using animated sprites in 2D games. This project remains a work in progress, with ongoing enhancements and optimizations.

Indoor Module

Time: 2022

I began my latest project with the indoor module first. The line-of-sight system is calculated using Compute Shaders on the GPU, ensuring efficient performance. For the tiles on the meshes, I employed a technique called Texture Bombing, which accelerates updates by eliminating the need for normals or UV coordinates. The indoor module is also still a work in progress, and has not yet been integrated with the outdoor module.

Somewhat Good Looking

Basements & Bosses

Time: 2016

The idea for this little mobile game prototype is based on an old DOS shareware game called Crime Fighter. This video was also recorded on a Desktop PC so the mouse cursor was again only used to simulate touch events.

Orbit

Time: 2016

My brother came up with an idea for a mobile game and I was willing to give it a go. It unfortunately was not fun enough for me to stick to it. The video was recorded on a Desktop PC so the mouse cursor was used to simulate touch events.

More Technical Experiments

500.000 Trees

Time: 2021

I adapted the Imposters system from Amplify to enable the rendering of hundreds of thousands of trees with almost invisible LOD switches. Instead of using Instanced Geometry I integrated the billboards into the meshes of the chunks of my terrain. My system uses Instanced Geometry only for close-up views of the vegetation and the transition is so smooth that you won’t notice it.

Fooling around with VR

Time: 2018

I purchased an Oculus Rift at the end of 2017. It felt as if I could experience games for the very first time again. My enthusiasm made me program a physically based mechanism for interactive doors, windows and throwable items.

Boolean Operations on Polygons

Time: 2017

The editor mentioned below required cutting holes into walls for objects like walls and doors. The algorithm for that was described in “Computational Geometry: Algorithms and Applications” by Mark de Berg, Otfried Cheong, Marc van Kreveld and Mark Overmars. Before that I also implemented an algorithm based on the paper from 2009 called “A new algorithm for computing Boolean operations on polygons” by Francisco Martı́nez, Antonio Jesús Rueda and Francisco Ramón Feito. However, it did not handle special cases.

Sims-Like House Construction

Time: 2014

I decided to give 3D another chance. This time in the Game Engine called “Unity 3d”. At first I only wanted to create a simple Zombie Shooter but the need to create an environment made me implement an editor that turned out to be fun in itself.

My First Roguelike Prototype

Time: 2012

The third dimension had some complexity implications that made me try to reduce it by switching to 2D and Roguelikes. However, the desire to create a game that takes place in the present age made me want to add cars and I was not able to create a mechanic that would feel right.

Minecraft Clone

Time: 2011

Minecraft made its first appearance in 2010 with some early alpha versions. When I encountered this game in 2011, it inspired me to program a voxel terrain engine in C++ with the 3D Graphics Engine called Ogre. I wanted to have a more organic looking terrain and hand modelled several hundred 3d pieces. The Dunning-Kruger effect at its best.