Infinity Engine

2012-2014
20 weeks
C++
8400

The Infinity Engine is one of my largest projects so far. It was written in C++ and DirectX 11 without additional libraries. The first version was created for the Game Engine Design lecture at the Technical University of Munich. Since then it has come a long way.

The engine was programmed from scratch. Its Win32 window structure was not difficult because I already had decent experience with it. DirectX 11, though, was an entirely different beast. Finding a good tutorial especially without the use of old DirectX libraries was very difficult at the time. That is why i started with my own C++ and DirectX 11 tutorial series.

The engine itself is highly optimized for voxel rendering. Currently it can create a world of potentially 33 million voxels while only using roughly 200MB random access memory. The terrain is procedurally generated on the fly and it creates the illusion of infinity by rebuilding the world while the player is moving. All of this is achieved with frame rates way above 100 on my HD6870 graphic card. At the moment a 2D simplex noise algorithm is used for the terrain generation but 3D noise is also implemented and works quite well. The engine is very flexible and can be modified with a configuration file. It supports both full screen and window mode with v-sync on or off.

Download the current build!

Requirements:
+ Windows 7, 8, 10
+ Pixel-Shader-Version 4 or higher
+ Visual C++ Redistributable which you can find here