Wir haben schon vor langer Zeit beschlossen, dass wir eine unbegrenzte Anpassung der Pixel-Art-Charaktere wollen

Viele Pixel-Art-Spiele vor uns haben sich bereits mit der Charakteranpassung befasst, doch unserer Meinung nach hat kein Spiel die Grenzen der Animation und Charakteranpassung so weit verschoben wie die 3D-Technologie in den letzten zehn Jahren. Die Möglichkeiten der Charakteranpassung in anderen Spielen sind enorm, was vor allem auf die immer leistungsfähigeren Spiel-Engines und Werkzeuge für Grafiker zurückzuführen ist.
Das Problem ist, dass man bei 2D-Pixelkunst nicht einfach wie in 3D Meshes austauschen und auf dasselbe Rig-Objekt anwenden kann. Jeder Frame wird von Hand gezeichnet. Also mussten wir herausfinden, wie wir:
- Erstelle eigene Animationen für unser Skelett: Laufen, Stillstehen und Angreifen.
- Überlegen Sie, wie wir für jedes einzelne Zahnradteil jeden Rahmen von Hand so zeichnen könnten, dass er zum Grundgerüst passt, sodass wir Hunderte von Zahnradsätzen zeichnen können, ohne dass dabei die Einheitlichkeit verloren geht.
- Stelle sicher, dass unabhängig von der Kombination alle Ausrüstungs-Kosmetik-Elemente korrekt übereinander liegen.
- Stellen Sie sicher, dass alle Kosmetikartikel in eine Palette passen.
- Stellen Sie sicher, dass alle Animationssätze für jeden Leerlauf- oder Lauf-/Angriffszustand die gleiche Anzahl an Frames aufweisen.
Ein ziemliches Unterfangen.
Wir wollten, dass die Spieler echte kosmetische Anpassungsmöglichkeiten haben, damit sie tragen können, was sie wollen, ohne sich Gedanken über Werte machen zu müssen. In einem 2D-Pixel-Art-Spiel ist das eine Menge Arbeit. Aber wir haben vor viereinhalb Jahren beschlossen, dass dies nicht verhandelbar ist. Wenn man ein MMO entwickelt, müssen sich die Spieler optisch voneinander unterscheiden. Sie wollen sich durch ihre Kleidung ausdrücken. Also müssen wir clever vorgehen und herausfinden, wie wir Ausrüstungssets erstellen können, die der Qualität der Kosmetik entsprechen, die wir aus unseren Lieblingsspielen kennen.
Wie wir uns entschieden haben, das Problem zu lösen
Schichten
Zunächst brauchten wir ein Schichtsystem. Wir begannen mit Folgendem
- Kopf
- Brust
- Beine
- Rückenteile
- Waffen und schließlich verschiedene Waffentypen.
Jedes Element wird als eigene Ebene gerendert, die dann auf der Figur zusammengesetzt werden.
Wir begannen mit der Basisanimation: dem Laufzyklus. Wir haben Wochen damit verbracht, denn sobald wir uns darauf festgelegt hatten, konnten wir es nicht mehr ändern. Jedes einzelne Teil, das wir jemals erstellen würden, müsste zu diesem Skelett, dieser Bildanzahl und diesen Proportionen passen. Wenn die Basis falsch ist, muss man im weiteren Verlauf alles neu erstellen.

Nachdem der Ablauf feststand, haben wir ein Grundgerüst entwickelt, auf das neue Ausrüstungssets aufgesetzt werden konnten. Anschließend haben wir eine Engine zur Verwaltung dieser Schichten programmiert. Die Reihenfolge der Schichten ändert sich je nachdem, in welche Richtung dein Charakter blickt und welche Waffe er ausgerüstet hat. Ein Schwert erfordert beispielsweise ein anderes Bruststück als ein Schwerter.

Dann haben wir beschlossen, dass wir mehr Waffentypen wollen…


Wir beschlossen, dass wir mehrere Waffen haben wollten: Schwerter, schwere Schwerter, schwere Waffen und sogar Stäbe. Jede Waffe hat einen anderen Animationsstil für das Brustpanzerteil. Im Falle des Stabs passten die Ruhe- und Laufanimationen der schweren Waffen perfekt, während der schnelle, ausholende Schwung einer leichten Waffe für die Angriffe geeignet war. Unser System ermöglichte es uns, passende vorhandene Animationen auszuwählen und diese mit neuen zu kombinieren.
Die kombinatorische Komplexität bereitete uns große Kopfschmerzen. Für jeden Waffentyp ist eine entsprechende Animation für den Brustbereich erforderlich. Jede Blickrichtung kann die Darstellungsreihenfolge der Ebenen verändern. Multipliziert man das mit allen Ausrüstungsplätzen, allen Waffentypen und allen Richtungen, erhält man ein System, das Tausende von Kombinationen verarbeiten muss, ohne dass etwas fehlerhaft aussieht.
Landwirtschaft? Jetzt müssen wir uns hinsetzen
Als wir über das Laufen hinausgingen, begannen wir, an Trinkanimationen, dem Farmen und dem Sammeln zu arbeiten. Wir stellten fest, dass wir vorhandene Frames aus den bestehenden Basisanimationen neu anordnen konnten, um diese neuen Aktionen zu erstellen. Das war nicht geplant. Es ergab sich einfach aus dem System, während wir experimentierten. Je mehr Aktionen wir hinzufügten, desto nützlicher erwies sich diese Vorgehensweise.
Wie wir das Sitzen ins Spiel integriert haben, indem wir nur ein paar zusätzliche Frames benötigten

Als wir über das Laufen hinausgingen, begannen wir, an Trinkanimationen, dem Ackerbau und dem Sammeln zu arbeiten. Wir stellten fest, dass wir vorhandene Einzelbilder aus den bestehenden Basisanimationen neu anordnen konnten, um diese neuen Aktionen zu erstellen. Das war nicht geplant. Es ergab sich einfach aus dem System, während wir experimentierten. Je mehr Aktionen wir hinzufügten, desto nützlicher erwies sich diese Vorgehensweise. Das System, das wir entwickelt hatten, konnte sich von nun an selbst weiterentwickeln.

Als wir die Sitzhaltung hinzufügten, gingen wir davon aus, dass dafür ein komplett neuer Animationssatz nötig sein würde. Es stellte sich jedoch heraus, dass wir lediglich die Bein-Animationen mit ein paar zusätzlichen Frames überarbeiten mussten. Das hat zwar etwas Zeit gekostet, war aber durchaus machbar. Das ist mittlerweile zur Regel geworden. Was zunächst nach einem riesigen Aufwand aussieht, beschränkt sich am Ende meist auf eine kleine Änderung an ein oder zwei Layer-Slots. Das System ist flexibler, als wir erwartet hatten, und wir entdecken immer wieder neue Anwendungsmöglichkeiten dafür.
Wo wir heute stehen

Spieler können Ausrüstung in den Slots für Kopf, Brust, Beine, Rücken und Waffen ausrüsten. Jedes Teil wird als eigene Animations-Ebene dargestellt. Beim Wechseln des Waffentyps passt sich das Bruststück automatisch an. Durch Transmog werden Werte und Aussehen voneinander getrennt, sodass ihr genau so aussehen könnt, wie ihr möchtet. Das System berücksichtigt alle Blickrichtungen, wobei sich die Reihenfolge der Ebenen in Echtzeit anpasst. Es funktioniert bei allen Animationen – ob Laufen, Sitzen, Trinken, Farmen oder Sammeln –, die alle auf derselben Basis-Laufanimation basieren, die wir vor Jahren festgelegt haben.
Wie geht es weiter?

Wir bauen das Animationssystem weiter aus. Jede neue Aktion, die wir hinzufügen, zeigt uns, wie viel das Skelett leisten kann. Wir haben noch mehr vor, aber die Grundlage hat sich bewährt und ist für unsere weiteren Pläne gut gerüstet.