im Zuge des aktuellen "Ich zeig mal, was ich gerade tue"-Trends möchte ich Euch die aktuelle Version von Splatter vorstellen. Das Projekt basiert auf ursprünglich auf unserem Beitrag zur ZFX Action II, ist seitdem aber drastisch umgekrempelt worden. Ich habe mich nun die letzten Wochen viel mit der Architektur dahinter beschäftigt, primär mit der GUI, aber auch mit dem Spiel-Storymodus und der Lokalisierung. Parallel dazu hat Stefan einen Editor geschraubt. Zur Anschauung zwei Bilder:
Das erste Bild aus aus dem Spiel - viele Details, wenig Großes. Ein paar neue Tile-Grafiken sind hinzugekommen, aber mein Grafiker hat leider nicht die Zeit wie ich, weswegen die Grafikfront unserer Indie-Gründung stark gefährdet ist. Neu ist aber auch der Froschgegner, der aus einem Splitterwelten-Monster entstanden ist und dann mit HeightMap und NormalMap ausgerendert wurde, damit er jetzt in dunklen Ecken lauern und den Spieler anspringen kann. Meine Freundin hat dafür die Sounds eingequakt, die wir dann mit Audacity zurechtgeschnitten und soweit möglich aufgearbeitet haben. Andere Gegner werde ich dann wohl wieder mit meinem eigenen BlackMetal-Gekreisch vertonen
Randnotiz zum Thema Gekreisch: meine Band geht die nächsten Wochen ins Studio, um ein Album aufzunehmen. Parallel dazu habe ich jetzt die Unternehmensgründung durchgezogen und werde mich demnächst mit dem Finanzamt auseinandersetzen müssen. Die nächsten Wochen werden sehr arbeitsreich, aber ich freu mich drauf.
Das zweite Bild zeigt die aktuelle GUI. Zur Architektur der Gui hatte ich auf Spieleprogrammierer.de schonmal was geschrieben. Hervorhebenswert finde ich aus jetziger Sicht immernoch die präzise Trennung zwischen Internem Zustand und Anzeige. Die GUI-Komponenten sind alle sehr schlicht im Code, die Darstellung ist komplett in einer Renderer-Klasse externalisiert. Auf dem Bild sieht man alle Komponenten, weil ich von jeder eine zur Erprobung verteilt habe. Die Anordnung macht dann ein automatischer Layouter, wenn man keine manuellen Angaben macht.
Der GUI-Renderer ist hier bereits ein Splatter-spezifischer: wir haben uns so gedacht, dass ein solcher apokalypse-artiger Zustand nicht gut für den Geisteszustand des Spielers sein kann. Daher fliegen jetzt im GUI-Hintergrund Erinnerungsfetzen des Spielers rum (bislang stark verfremdete Fotos aus meinem letzten Urlaub), die Schrift flackert, über allem liegt ein Randabdunklungseffekt wie ein Augenlid und ein Glühen und gelegentlich driftet das Bild in Doppelbilder auseinander, wie als ob der Betrachter ein Problem mit dem Augenfokus hat. Kommt zusammen mit der Musik schon ganz gut, auch wenn ich immernoch Zweifel hab, ob das am Ende nicht einfach nur störend und peinlich rüberkommt... werden wir ausprobieren müssen. Das Konzept des unabhängigen Renderers hat sich hier jedenfalls sehr bewährt. Mit dem Standard-GUI-Renderer sieht die GUI z.B. so aus:
Weitergehen wird es jetzt mit einem kleinen Framework für Zwischensequenzen und dem Ausarbeiten des Storymodus. Wir haben inzwischen auch einen Musiker unter Vertrag, der Ambient/Industrial für Menü und InGame und ein paar rockigere Sachen für Endbosse machen wird. Nur die Grafik wird wirklich wirklich haarig. Ich halte euch auf dem Laufenden.
Danke an der Stelle an das ganze Forum, speziell Krishty, CodingCat und die anderen C++-Champions. Ich habe hier nur durch schlichtes Mitlesen schon unglaublich viel gelernt. Ich hoffe, ich kann das mal zurückgeben.
Bye, Thomas


