Pommi
Tech:
Custom engine written in C, featuring stylized rendering using Metal, skeletal animation,
level editor, custom asset pipeline, and hot-reloadable code.
Experience explosive action in this thrilling game! With an endless runner mode, charming cartoon graphics, and tight controls, the fun never stops. Jump in and play now!
Available on the iOS app store now!
Only available in the US and Canada iOS AppStore!
Helix
Tech:
C++, WebGPU (Google Dawn), WGSL, ImGui, Emscripten
Helix served as a small test of the new WebGPU standard for 3D rendering
in the browser. The app procedurally generates a 3D mesh from a curve, and
the parameters can be tweaked live. For this type of shape sweeping, the
most important part is to get the UV maps right without distortions.
The UI is created with the ImGUI library commonly used in games.
Try it out in the browser! Note that you need a WebGPU-enabled browser,
such as Google Chrome.
Open in Browser
Varena
Tech:
PICO-8, Lua
Varena, which is short for Vampire Arena, is a demake of the
popular horde surivor game Vampire Survivors. In Varena, you step into
the shoes of a priest to battle the dark forces of evil. A single
screen experience featuring multiple enemy types, weapons, and upgrades.
Click here to play it in your browser!
Nubuck
Tech:
C++, OpenGL, Qt, LEDA
Nubuck is a tool for visualizing and animating geometric algorithms
in three-dimensional space.
A tool like this helps understanding and presenting geometric
algorithms in both development and education.
In the screenshot on the left hand side, for example, Nubuck is being
used to show the relation between the Voronoi Diagram and Delaunay Triangulation in
the plane, as well as the connection to the Convex Hull in 3-D space.
Besides an API to write algorithms, Nubuck provides an interactive sandbox environment
to create inputs and concatenate the results of different operators.
Also, modern shading techniques are employed to produce visually appealing images
using an OpenGL-based renderer.
The implementation of Nubuck was the topic of my master's thesis, so
a comprehensive description can be found in the document linked below.
video
github
thesis
Bomberlad Galaxy
Tech:
C#, Unity3D, Blender
Bomberlad Galaxy is a multiplayer game that features the classic Bomberman gameplay,
but the players move on a tiny planet, i.e., a sphere.
As it turns out, a sphere cannot be tessellated with only congruent quadrilaterals,
so there is no way to create a suitable, spherical mesh from a checkerboard-like map.
Instead, a shader-based fisheye projection is used to create the illusion as-if the
player really moves on a sphere.
Note that I did not create the player mesh myself. The cute little puppy is from
readheadrobot
and can be found in the Unity asset store.
video
Backstabbers
Tech:
C#, Unity3D, Blender
Backstabbers is the result of a course in game programming. There are two types of players:
coders and backstabbers. Coders, or programmers, use the terminals to do work. Backstabbers,
on the other hand, try to stab coders in the back with a knife.
Yes, there is a story behind this game, but it's less dramatic than you might think.
I just found the idea of making a game about teamwork really funny.
Also, I liked the programming theme. Each completed session at a terminal, for example,
results in a 'git commit' and increases the revision number (highscore).
Most of the programming time was spend on
implementing networking. The game uses a
client-server model with an authoritative
server. Interpolation and client-side
prediction are used to mitigate lag. Chairs can
be pushed around by coders, and act as moveable
obstacles.
Note that this game has been written before the release
of Unity 5's UNet API, which has these networking
features built-in.
video
Various Graphic Demos, Games
Tech:
C++, OpenGL, DirectX, SFML, CUDA
I like graphics, so below you see a collection of various
programs I've written that produce neat images. They show
raytraced spheres, bézier curves, deferred shading, and so
on.
Of course, I've made some non-graphical applications, too. Programs I've written for courses
at the university, for example, include compilers and graph algorithms.
Although I do know how to use Blender, I'm not capable to model something even remotely realistic,
so the credit for all the cool models goes to more talented people. I forgot where I got the women from,
but the monster is the 'hunter' from
the game Prey (great game, highly recommended).