Was wäre eine Welt voller Schrott, Müll und giftigen Abgasen, ohne großartig futuristische Roboter, genannt Cyborgs? – Wir sagen, Nichts!

Kein Wunder also, dass in unserem Action Shooter genau diese nicht fehlen dürfen und im späteren Spielverlauf, ganz getreu den Science-Fic
tion-Klassikern angelehnt, langsam die Oberhand als Main-Charaktere übernehmen.

Anfangs noch Humanoid, entwickeln sich unsere Spieler, zunehmend mit steigendem Spielfortschritt, immer mehr zu gefährlichen, hyper-modernen Kampfmaschinen, die sich ihren Weg durch die Ranglisten, freischießen.

Modular Character Concept Art

Modular Character Concept Art

Ein großes Augenmerk bei der Entwicklung von Scrap Yard liegt daher auf der Umsetzung eines modularen Charaktersystems, da der Spieler seinen Standard-Charakter stufenweise durch den Austausch von Körperteilen verbessern kann.

Und wirklich, wer würde nicht einen Flammenwerfer als seinen rechten Arm haben wollen oder?

In den ersten Ligen hat der Ausgangscharakter zum Spieleinstieg lediglich eine Reihe von humanoiden Standardvariationen zur Auswahl. Doch je weiter der Spieler aufsteigt, desto mehr cybernetische Varianzen werden möglich, da bei Ligenaufstieg optimierte Körperteile zum Erwerb freigeschaltet werden. So sind austauschbare Körperteile: der Kopf, der Torso, der linke sowie der rechte Arm und die Beine.

Die Umsetzung des modularen Charakters stellte und stellt uns fortlaufend vor einige Herausforderungen. Zum einen bestehen die Schwierigkeit auf der technischer Seite, also wir sprechen hierbei speziell über die Unity-spezifischen Besonderheiten und vor allem diese zu verstehen. Aus der Sicht der Entwickler heißt dies konkret: Einen notwendigen Fokus auf die Schnittkanten der einzelnen modularen Körperteile zu legen.

Schnittkanten: Modularer Charakter

Schnittkanten: Modularer Charakter

Wie man sieht, können unsaubere Übergänge entstehen, da die Körperteile nicht perfekt zueinander passen und dadurch visuell deutliche Lücken entstehen. Daher müssen wir, zum Glück bin ich kein Entwickler, die Daten der verschiedenen Body-Parts dementsprechend anpassen, vorbereiten und diese anschließend als ein völlig neues Objekt zusammensetzen, da die Positionen der ‚Vertices‘ an den Schnittkanten, die Zuweisung von Weights, also Gewichten und die Ausrichtung der dazugehörigen ‚Bones‘ identisch sein müssen.

Dieses Problem wird noch deutlicher, wenn Animationen abgespielt werden. Das bedeutet: Nicht nur müssen alle einzelnen Körperteile, Gewichte, Knochen und deren Models – während der Bewegungen flüssig in einander übergehen, sondern zudem müssen die jeweiligen Animationen auch auf allen modularen Kombinationen gut perfekt funktionieren.

Neben den technischen Herausforderungen liegt bei der grafischen Umsetzung, aufgrund unserer familiären Teamgröße, ein besonderer Fokus auf dem zeitlichen Aufwand, welcher bei der Erstellung der Texturen und High Models der einzelnen Körperteile und deren Variationen ganz leicht entsteht/ausufern  kann.

So – Wir haben uns diesen Problemen angenommen und sind zuversichtlich auch entsprechendeErgebnisse zu liefern. Wie? Das klären wir jetzt auf:

Um Zeit zu sparen, haben wir uns nach einiger Recherche für den Einsatz des Substance Painter von Allegorithmic entschieden. Sowohl der Substance Painter alsauch der Substance Designer arbeiten auf Basis von Texturen und 3D-Modellen und können die Informationen in neue Formate wandeln.

Charakter-kubisch

Charakter-kubisch

Modularer Charakter dick/dünn

Modularer Charakter dick/dünn

So ist beispielsweise ein Projektionsmapping vom HD- auf das LD-Modell möglich, die Konvertierung von Höhen- in Bumpmaps sowie Maps auf Basis des 3D-Modells zu generieren, wie z.B. Curvature-Maps (bspw. für angestoßene/abgerundete Ecken), AmbientOcclusion-Maps (für diffusen Schatten oder auch Dreck) und Höhenmaps (z.B. für den Einsatz als Alpha-Kanal für Flugrost).

Wir nutzen das Tool hauptsächlich für die Vereinfachung des Texturierungsprozesses, da der Substance Painter die Zuweisung konkreter IDs erlaubt, wodurch einzelne Bereiche auf dem Low-Character-Model schneller selektiert und ausgefüllt werden können.

Dies erleichtert immens die Texturierung und spart zeitintensives manuelles Einfärben. Die Textur simuliert sozusagen die Details der einzelnen Objekte auf das Low-Model. Wie das genau funktioniert, kann zum Beispiel auf dem Allegorithmic-Blog nachgelesen werden.

Für die Zukunft ist festzuhalten: läuft. Wir sind dran. Auf jeden Fall sind die visuellen Erscheinungen des Charakters sukzessiv optimiert und sind auch mittlerweile in ersten Varianzen für die Ligen integriert.

Glück auf, Freunde.