In unserem Projekt Meta Racer haben wir ein prozedurales Rennspiel entwickelt, bei dem aus Strömungsmodellen Rennstrecken werden.
Auf der Suche nach einem geeigneten Algorithmus hatten wir zunächst ein Baukasten-System mit verschiedenen Streckenabschnitten erprobt, aus denen sich dann die Strecke zusammenbauen sollte. Doch die Übergänge von einem Abschnitt in den nächsten stellten uns nicht zufrieden, denn sie fühlten sich zu unrund an.
Ein neuer Ansatz musste her. Und wie so häufig in der Menschheitsgeschichte sind auch wir in der Natur fündig geworden. Strömungsmodelle von beispielsweise Flüssen wurden zur Inspirationsquelle, denn sie verfügen über hervorragende Kurveneigenschaften und sind dynamisch gewachsen. So schickten wir uns an, aus den natürlichen Strömen einen Algorithmus zu entwickeln – mit Erfolg.
In der finalen Version von Meta Racer, entwickelt mit Unity, werden also aus Strömungsmodellen, übersetzt durch einen Algorithmus, Rennstrecken. Man spricht hier auch von prozeduraler Synthese oder prozeduralem Design. In Echtzeit entstehen Strecken, die durch eine Vielzahl an möglichen Varianten nie gleich sind und die Spielenden vor immer neue Herausforderungen stellen.
Die Korrespondenz zwischen verschiedenen Spielenden findet bei Meta Racer in einer Server-Client-Architektur statt. Der Server synchronisiert die Handlungen der einzelnen Spielenden und auch die Streckengenerierung serverseitig stattfindet. Als Cloud Computing-Dienst nutzen wir AWS.
Rennen sind immer ein Prozess und daher finden wir es nur logisch, auch die dynamische Generierung einer Rennstrecke prozesshaft zu betrachten und eben nicht in einzelnen Stückchen. Diesem Ansatz folgen wir auch bei unseren anderen Projekten und Dienstleistungen, denn der Blick für das große Ganze ermöglicht weitblickende und innovative Arbeitsweisen und führt zu nachhaltigen Ergebnissen!