In this section I want to show you some projects, videos, games, and other media I'm very proud of. Some of them were part of a course, others were created as hobby.

Games and other Software Projects

I've already developed some small games during some courses at the Vienna University of Technology and at the Fachhochschule Technikum Wien.

All graphics are designed and drawn by myself.

3D Printing

This model was designed to be 3D-printed and was part of a lecture. The task was to create a non-trivial surface in Matlab, import it into a 3D modelling software (in my case Maya), create a pedal and restage the elements in an appealing way.

Graphical iteration

This program calculates the intersetion between a user-defined function and the function y=x iteratively.
The user can either enter a function or create a function by adding data points. The library MathosParser parses the user input. The grahical iteration can be executed between a given interval or for a certain number of times.
Download .exe!
Programming language: C#(Visual Studio), Windows Forms


A simple implementation of an L-System. Up to ten rules can be entered. The squared brackets [] represent a sub element. A + and - indicates how the angle should be applied on the element.

Download .exe!
Programming language: C#(Unity)

Master thesis

This program shows the advantages and disadvantages of tesselation combined with other techniques like displacement mapping.
Please note, you need a computer equipped with a graphics card supporting OpenGL 4.3 or higher in order to run this application.

Download .exe!
Programming language: C++ and OpenGL 4.3


A Shoot'em up, where the own life energy is used for shooting. Enemy shots have to be gathered using a shield in order to restore the energy. This shield can only be used for a short time and teleports the player between two worlds.
This game was the final project at my studies at the University of Applied Sciences Vienna. It was developed together with Kristian Ljubek and Dominik Digles.

Programming language: C# (Unity)


During my one month internship in Tokyo at the National Institute of Informatics I was working on a plugin for the game Mechanics.
My part was to develop a GUI, where the user is able to design his/her own levels.
Programming language: C# (Unity)

Project Smart

A project about information transfer using high frequent signals on Android Phones.

Programming language: Java

Shader programming: playing with effects

An OpenGL application with the following effects:
  • Directional light, point light and spot light
  • Bump Mapping
  • Displacement mapping using tesselation
  • Particle effect on GPU
  • Blinn and Phong Shading
  • Self Shadowing
  • Soft Shadow Mapping with Percentage Closer Filtering
  • Wireframe Mode
It is possible to play around with parameters like tesselation level, displacement factor, light power etc. I used BeGUI as user interface.
These Tutorials helped me a lot:
Programming language: C++ and OpenGL 4.0

Chain Rxn

A simple reimplementation of the game Chain Rxn . I haven't looked at their source code.

Programming language: Flash

Swarm AI:Ants

A implementation of the ant colony optimization. Black footprints represent ants, blue ones indicate the pheromone level at this field.
The GUI is based on the Astar program. Click anywhere to move the goal.

Download .exe!

Programming language: C++ and Clanlib

Swarm AI: Birds

A swarm of particles following the mouse cursor. Each particle(bird) has three desires:
  • It wants to keep it's current direction.
  • It wants to go to the best by himself discovered position.
  • It wants to go to the neighbour with the best current position.

Download .exe!

Programming language: C++ and OpeGL 2.1


A simulation of fireworks with gravity, bouncing of particles and roll friction.

Download .exe!

Programming language: C++ and OpenGL 2.1

Lunar(/Owl) Lander

My owlish version of Lunar Lander with gravitation. Use the arrow keys to navigate.

Download .exe!

Programming language: C++

Forest fire: a simulation of a cellular automaton

This cellular automate simulates a forest fire by applying some rules for each cell per generation.

Download .exe!

Programming language: C++

Queens Problem

The queens problem solved using a genetic algorithm. The parameters population, iterations and mutation factor are adjustable.

Download .zip!

Programming language: C++ and Clanlib


The A* algorithm using manhattan distance as heuristic. The graphics are from my earlier Android game Devil Hunters.
It's possible to put the goal and the start point to another place as well as generating new enemies using the mouse and the keys "G","H", and "E".

Download .zip!

Programming language: C++ and Clanlib

Connect Four

The AI is calculating every possible move and puts it in a tree. To gain the ideal move, the tree is explored,the moves are evaluated using a heuristic approach and alpha beta pruning is used to reduce the search.

Download .zip!

Programming language: C++ and Clanlib

Pac Man

First small game using C++. The game isn't completed since the focus was on the different AIs of the ghosts.

Download .zip!

Programming language: C++ and Clanlib

Convex hull of a set of given points

This application allows setting new points by clicking and displaying the convex hull. The convex hull is calculated using the Quick-Hull algorithm.

Download .exe!

Programming language: C# and using Windows Presentation Foundation as GUI


An implementation of the paper SparkClouds: Visualizing Trends in Tag Clouds .
A SparkCloud is a wordcloud using a function shown under each word displaying the trend of the frequency of the word over time.
Instead of visualizing the trend of words over time, this application is able to process books and display the trend of the most popular words for each chapter. The words are sorted by popularity using MergeSort.
You can try out the application here . Chapters have to be started with a "~".
As example you can use the following books: .
Programming language: JavaScript

Interactive Visual Comparison of Multiple Trees

An application based on the paper Interactive Visual Comparison of Multiple Trees . In order to compare multiple unweighted trees four kinds of views are generated: the matrix view, the histogramm view, the 1:n tree view and the tree comparison view. The similarity is encoded in colors: blue encodes a high similarity while yellow indicates a low one.
Download .jar!
(JWT 32 Bit required).
Programming language: Java using SWT

Devil Hunters

My first Android Game is still a work in progress. The main concepts of the game are implemented, but it lacks on content so far, which keeps it from being released on the Android Market.
I'm planning to put a beta application on this web page as soon as possible.
Devil Hunters is a Role Play Game, similar to Pokemon, but it is adressed to an older target group. The fighting system is similar to the Pokemon Gameboy games, though the game contains different kinds of quests to be solved.

Programming language: Java

PvZ Remake

My second J2ME game is a very simple remake of Plants versus Zombies.
PvZ Remake
Programming language: Java


This was the first cellphone game, I developed. It should work on every cellphone, which supports J2ME. I have only tried it using the emulator.
You have to reflect the light rays until they reach a certain goal.
Programming language: Java
Download .jad & .jar


Most of the videos shown here are projects of a video production course and in German. Maybe someday I will add english subtitles.
But I think the meanings of the videos are mostly clear anyway.

Unfortunately I can't publish every video project I've done due to copyright issues.

This video was made for a course called "Multimedia Production 1". We picked up as a topic the catastrophic situation at universities in Europe.

This video was done for a competition at my old school. It is about the behaviour of teenagers at school. I won the first price.