Archiv

Alle Projekte, welche jemals auf dieser Website gezeigt wurden, in chronologischer Reihenfolge.

Archive

All projects ever showcased on this website, in chronologic order.



Portfolio-Website

Die Website auf der sich dieser Text befindet und die mein Projektportfolio möglichst übersichtlich und mehrsprachig vorstellen soll.

Seit 2020 soll diese ursprünglich als One-Pager konzipierte Seite mein Portfolio stark visuell gestützt abbilden und möglichst einfach zugänglich machen. Mir selbst soll sie dabei ein einfaches Hinzufügen weiterer sowie Erweitern bestehender Projekte ermöglichen.

Zusätzlich dient die Seite mir als Testgelände, um mich mit mir bekannten oder völlig neuen Web-bezogenen Konzepten auseinanderzusetzen. So werden Features der Seite von mir von Zeit zu Zeit in mehr oder weniger großem Umfang überarbeitet oder ergänzt, um meine Webpräsenz aussagekräftiger und nutzerfreundlicher zu gestalten.

Bei ihrer ersten größeren Überarbeitung im April 2022 wurde die Seite so durch ein Archiv, Direktlinks zu einzelnen Projekten sowie einer persistenten Spracheinstellung ergänzt. Außerdem wurden viele kleinere Optimierungen und UI-Anpassungen vorgenommen, die vor allem die mobile Version der Seite verbessern.

Im August 2023 kam es erneut zu einer größeren Anpassung, wobei einige Navigationselemente umgestaltet und die Seitenstruktur hinsichtlich Einheitlichkeit und Organisation überarbeitet wurde.

Umgesetzt wurde die Website ohne Frameworks unter Nutzung von PHP, JavaScript in Verbindung mit jQuery, sowie natürlich HTML und CSS.

Portfolio website

The website you are reading right now, which is meant to present my project portfolio in multiple languages.

Originally conceived as a one pager, this site has been online since 2020 and is intended to make my portfolio easily accessible and show it off very visually. It's also designed to let me easily add new projects and expand the ones already being presented.

The site also serves as a testing ground for me to explore both familiar and completely new web-related concepts. Thus, features of the site are revised or enhanced to a greater or lesser extent from time to time, in order to make my web presence more informative and user-friendly.

In its first major revision in April 2022, the site was expanded with an archive, direct links to individual projects and a persistent language setting. It also received many minor tweaks and UI adjustments, improving expecially its mobile version.

August 2023 brought another significant rework, featuring a redesign of some navigation elements and an overhaul of the site structure in regards to uniformity and organization.

I created the website without frameworks from scratch, using PHP, JavaScript in conjunction with jQuery and of course HTML as well as CSS.

Ein Projekt, neben dem ein Eintrag der Seitenleiste geöffnet wird, in der Desktopversion der Seite.Ein Projekt im Archiv der Desktopversion der Seite.Ein Projekt in der mobilen Version der Seite.Ein Projekt im Archiv der mobilen Version der Seite.Die geöffnete Seitenleiste in der mobilen Version der Seite.A project with an opened sidebar entry next to it in the siteA project in the archive of the siteA project in the siteA project in the archive of the siteThe opened sidebar in the site

Populations-Simulator

Eine Anwendung, in der Populationsmodelle erstellt und Simulationen anhand dieser durchgeführt werden können.

Über einen Editor können vielfältige Kreaturen aus diversen anpassbaren Bausteinen zusammengesetzt werden, welche ihr insgesamtes Verhalten definieren. So erstellte Kreaturen können in ebenso anpassbaren Modellen zusammengebracht werden, welche daraufhin in Echtzeit simuliert werden können, um die definierten Verhaltensweisen anschaulich erfahrbar zu machen.

Das Programm sollte dazu dienen, den möglichen Nutzen des von Unity entwickelten Data Oriented Technology Stack am Anwendungsgebiet der Populationssimulationen praktisch zu erproben. Aus diesem Grund kann die Simulationsdurchführung wahlweise mit als auch ohne Nutzung von DOTS geschehen, um einen direkten Vergleich zu ermöglichen.

Umgesetzt wurde die Anwendung rein in Unity, mithilfe einer Entwicklungsversion von Unity DOTS. Ich konzipierte und implementierte sie im Rahmen meiner Masterarbeit ("Umsetzung einer Anwendung zur Modellierung und Durchführung von Populationssimulationen mithilfe von Unity DOTS").

Population simulator

An application in which population models can be created, allowing simulations to be run using them.

Using an editor, users can assemble a variety of creatures from various customizable building blocks, which define their overall behavior. Creatures created in this way can be brought together in similarly customizable models, which can then be simulated in real time to demonstrate the defined behaviors.

The program was meant to empirically test the potential benefits of Unity’s Data Oriented Technology Stack for the field of population-based simulations. For this reason, simulations can be run either with or without the use of DOTS in order to allow a direct comparison.

The application was created purely using Unity, utilizing a developmental version of Unity DOTS. I designed and implemented it as part of my master thesis on ("Implementation of an application for modeling and running population simulations using Unity DOTS").

Eine laufende Simulation mit verschiedenen Tieren.Eine Kreatur wird im Editor über ein Drag-and-drop-Interface bearbeitet.Eine neue Kreatur wird im Editor über einen Dialog erstellt.Ein Modell wird im Editor bearbeitet.Das hauptmenü der AnwendungA running simulation featuring various animals.A creature being assembled in the editor using a drag and drop interface.A new creature being created in the editor via a dialogue.A model being adjusted in the editor.The main menu of the application.

Game Idea Giver

Eine interaktive Website, die eine manuell erstellte Liste von Spielkonzepten präsentiert.

Ideen sind in Kategorien eingeordnet, nach denen sie gefiltert werden können. Der Game Idea Giver dient dabei als Sammelort aller meiner Ideen, für deren Ausarbeitung und/oder Umsetzung mir Zeit oder Helfer fehlen. Außerdem nutzte ich die Umsetzung der Seite, um Konzepte für ein filterbares Tag-System sowie grafikbasierte, pseudo-zufällige Animation, für den Hintergrund der Website, auszuprobieren.

Die Seite nutzt hauptsächlich JavaScript, sowie etwas PHP und enthält natürlich HTML und CSS, ohne jegliche Frameworks. Ich arbeitete bei ihrer Umsetzung allein.

Game Idea Giver

An interactive website serving a curated list of game concepts.

Ideas are sorted into categories, which they can be filtered by. The Game Idea Giver serves as a space for any ideas I realistically won't have the time or manpower to flesh out and/or realize. I also used its implementation to test concepts for a filterable tagging system as well as image based, pseudo-random animation for the website's background.

The site mostly works with JavaScript, with some light PHP and of course contains HTML and CSS, using no frameworks. I worked alone implementing it.

In der Desktopversion der Website wird eine Spielidee präsentiert.In der Desktopversion der Website wird eine Spielidee präsentiert, wobei nur einige Tags aktiviert sind.In der mobilen Version der Website wird eine Spielidee präsentiert.In der mobilen Version der Website wird eine Spielidee präsentiert, wobei nur einige Tags aktiviert sind.A game idea is being presented on the desktop version of the website.A game idea is being presented with only some Tags enabled on the desktop version of the website.A game idea is being presented on the mobile version of the website.A game idea is being presented with only some Tags enabled on the mobile version of the website.

Glolab

Eine Android-App, in der standortgebundene AR-Objekte erstellt, entdeckt und bearbeitet werden können.

Nutzer können an beliebigen Orten Objekte aus Primitivkörpern zusammensetzen, welche daraufhin mithilfe von Google Cloud Anchors an ihren aktuellen Standort gebunden werden. Bereits von anderen oder einem selbst erstellte Objekte im Umkreis des Nutzers werden angezeigt und können aufgesucht werden, um sie anzuschauen oder zu bearbeiten.

Wir arbeiteten in einem Team aus 4 Personen, wobei ich das grundlegende Projektkonzept erarbeitete und als Programmierer agierte. Dabei setzte ich hauptsächlich das Platzieren und Verändern von Objekten sowie das System zum Rückgängig machen und Wiederholen um. Zur Umsetzung der App nutzten wir Unity mit AR Foundation.

Glolab

An Android-App in which location-based AR objects can be created, discovered and edited.

Users can construct objects using primitive bodies, which are then tied to their current location using Google Cloud Anchors. Existing objects created by others or oneself in the user’s vicinity are displayed and can be visited to view or edit them.

We worked in a team of 4, with me devising the basic project concept and acting as a programmer. I mainly implemented the placing and editing of objects as well as the undo and redo system. We used Unity with AR Foundation to create the App.

Ein AR-Objekt wird erstellt.Ein erstelltes AR-Objekt wird bearbeitetr.Die Auswahl an Primitivkörpern, aus denen AR-Objekte erstellt werden können.Im Entdecken-Modus zeigt ein Kompass nahegelegene AR-Objekte.Ein AR-Objekt wurde entdeckt und kann bearbeitet werden.Der Startbildschirm der App.An AR-object is being created.An existing AR-object is being edited.The selection of primitive bodies, which can be used to build AR-objects.A compass shows nearby AR-objects in the discover mode.An AR-object was found and can now be edited.The app

Monkey Maniacs

Ein analoges Brettspiel mit optionaler begleitender Web App inspiriert von der Bloons TD-Spielereihe.

2 Spieler treten gegeneinander an, wobei sie Karten taktisch auf ihrem jeweiligen Spielbrett platzieren, um ihre Verteidigung über mehrere Runden aufzubauen. Am Ende jeder Runde wird eine Gegnerwelle erstellt, gegen die die Verteidigungslinien standhalten müssen. Die Spieler verfügen über eine begrenzte Menge an Gesundheit und es verliert derjenige, dessen Gesundheit zuerst 0 erreicht. Um die Auswertung der Runden zu erleichtern, kann eine für das Spiel entwickelte Web App genutzt werden, die nach Eintragen der aktuellen Angreifer- und Verteidiger-Werte automatisch den Gesundheitsverlust ermittelt.

Das Spiel wurde in einem Team aus 2 Personen erstellt, wobei ich hauptsächlich das Game Design mitgestaltete und die Umsetzung der Web App übernahm. Letztere wurde hauptsächlich für Mobilgeräte konzipiert und mit schlichtem JavaScript, HTML und CSS ohne Frameworks erstellt.

Monkey Maniacs

A physical board game with an optional companion web app, inspired by the Bloons TD game series.

2 players compete by tactically placing cards on their respective board to build up their defences over multiple rounds. At the end of each round, a wave of attackers is created to go up against the defences. Players have a limited amount of health and the one whose health reaches 0 first loses. A web app developed for the game can be used to simplify the round evaluation, automatically determining the health loss after being given the current attack and defence values.

The game was created in a team of 2 people, with me mainly contributing to its game design and being responsible for creating the web app. The latter was designed primarily for mobile devices and uses simple JavaScript, HTML and CSS without frameworks.

Die Aufbewahrungsbox mit allen analogen Komponenten des Spiels.Das Spiel im Gange aus Sicht eines der Spieler.In der Desktopversion der Web App wird eine Runde ausgewertet.In der Desktopversion der Web App werden Werte eingetragen.In der mobilen Version der Web App wird eine Runde ausgewertet.In der mobilen Version der Web App werden Werte eingetragen.The storage box containing all physical components of the game.The game in progress from the view point of one of the players.A round is being evaluated in the desktop version of the web app.Values are being entered in the desktop version of the web app.A round is being evaluated in the mobile version of the web app.Values are being entered in the mobile version of the web app.

Cosmorit

Ein auf Deathrun-Spielen und -Spielmodi basierendes asymmetrischen online-Mehrspielerspiel für bis zu 5 PC-Spieler.

Ein zufällig ausgewählter Spieler erstellt als Builder einen Parcours, wobei er verschiedene Fallen auf einem vorgegebenen Spielfeld platziert. Alle anderen Spieler versuchen als Team von Runner-Robotern eine Ressource ans Ende des Fallenparcours zu transportieren. Dabei kann der Builder platzierte Fallen in Echtzeit auslösen, um die Runner zusätzlich zu behindern.

Cosmorit wurde in einem Team aus 5 Personen als Vertical Slice erstellt, wobei ich hauptsächlich an Programmierung und Game Design mitwirkte. Unity kam als Engine des Spiels zum Einsatz.

Cosmorit

An asymmetric online multiplayer game for up to 5 PC-players, based on Deathrun games and game modes.

A randomly selected player acts as the builder and creates a course, placing various traps in a predefined area. All other players are in a team of runner robots and try to transport a resource to the end of the trap course. At any time, the builder can trigger placed traps to further hinder the runners.

Cosmorit was created in a team of 5 people as a Vertical Slice, with me being mainly involved in programming and game design. Unity was used as the game’s engine.

Mehrere Runner laufen durch einen Parcours.Der Builder beobachtet eine laufende Runde.Ein bereits zerstörter Wunner beobachtet einen Teamkammeraden.Der Builder baut einen Fallenparcours.Spieler versammeln sich vorm Spiel in einer Lobby.Das Optionsmenü.Multiple Runners are moving through a course.The Builder watches an active game.A Runner who was already destroyed is spectating one of his teammates.The builder is constructing an obstacle course.Players gather in a lobby before the game starts.The option menu.