Die 3D-Pipeline von Dead Cells, Schritt für Schritt
Dead Cells sieht handanimiert aus, doch seine Figuren wurden in 3D animiert und als kleine Pixel-Art-Frames gerendert. Der Artist hat die Methode in 2018 beschrieben. Hier steht, was sie tut, warum sie funktioniert und wie du dasselbe mit deinen eigenen Modellen machst.



Die Pipeline, wie ihr Artist sie beschrieben hat
Im Januar 2018 schrieb Thomas Vasseur, ein Jahr lang der einzige Artist bei Motion Twin an Dead Cells, für Gamasutra, heute Game Developer, den Artikel “Art Design Deep Dive: Using a 3D pipeline for 2D animation in Dead Cells”. Die Schritte waren:
- Zuerst ein Pixel-Art-Modellbogen. Er zeichnete einen einfachen 2D-Bogen der Figur, baute darauf in 3ds Max die Figur und ihr Skelett in 3D und exportierte sie als FBX.
- Sehr einfache Modelle. Bei einer Figur, die im Spiel nur etwa 50 Pixel hoch ist, lohnte sich ein detailliertes 3D-Modell nicht.
- Klein rendern, ohne Anti-Aliasing. Ein hauseigenes Programm renderte das Mesh sehr klein und ohne Anti-Aliasing, was den pixeligen Look ergibt.
- Auf Keyframes animieren, wie in 2D. Angriffe wurden Pose für Pose gebaut: Zuerst wurden die Keys mit möglichst wenigen Frames getaktet, erst danach kamen Zwischenframes vor oder nach einem Key hinzu, nie zwischen den Keys.
- Jeden Frame mit Normal Map exportieren. Jeder Frame wurde als PNG mit seiner Normal Map gespeichert, damit das Spiel ihn mit einem einfachen Toon-Shader beleuchten konnte.
Warum es funktionierte
Der Deep Dive nennt die Gründe klar. Man musste nicht jeden Frame neu zeichnen. Eine Animation ließ sich auf mehreren Modellen wiederverwenden. Ein Rüstungsteil kam dazu, indem man es am 3D-Modell befestigte, statt jeden Frame neu zu zeichnen, in dem es zu sehen war. Alte Modelle und Teile wurden für neue Monster wiederverwendet, was er als den nützlichsten Trick im Workflow bezeichnet, der Hunderte Stunden spart.
Vor allem wurden Korrekturen billig. Wenn die Gameplay-Programmierer das Timing eines Angriffs änderten oder eine Waffe verlangsamten, verschob er die Keys auf der Timeline und renderte neu. Bei handgezeichneter Animation hieße dieselbe Änderung, neu zu zeichnen, und oft wurde es einfach nicht gemacht.
Dasselbe mit Pixor
Der Renderer von Dead Cells war eine Eigenentwicklung und wurde nie veröffentlicht. Pixor ist eine eigene App, die dieselben Schritte für jedes Modell abdeckt, das du hast: in Blender geriggt, von Mixamo geladen oder aus der kostenlosen Bibliothek.
Kamera von der Seite. Klicke im Schritt Szene in der Gliederung auf die Kamera Süd und setze Spiel auf Platformer: eine Seitenansicht nach rechts, eine Seite, für links gespiegelt. Erhöhe Breite und Höhe auf 64 oder 96 Pixel für eine Figur mit Waffe; der Leitfaden zu Sprite-Größen hilft bei der Wahl.
Klein und scharf rendern. Pixor zeichnet jeden Frame auf dem eigenen Pixelraster des Sprites, standardmäßig ohne geglättete Kanten (--aa 0) und mit Farben, die auf die Rampen der Palette beschränkt sind, einem Maßstab in Pixel pro Meter für alle Frames und einem Pivot, der auf einem Pixel fixiert ist, damit die Figur nicht schwimmt.
Ein Look, nicht nur ein kleines Rendering. Dead Cells setzte auf Beleuchtung und einen Toon-Shader. Im Schritt Style liefert das Preset selout Lichtbänder, farbtonverschobene Rampen und selektive Outlines, mit Bändern, die von Frame zu Frame ruhig bleiben, damit ein Lauf nicht flackert.
Pose für Pose. Im Schritt Asset behält Behaltene Frames des Nodes Sprites so viele clevere Frames, aus den Posen des Clips gewählt und jeweils bis zum nächsten gehalten. Das ist der Pose-für-Pose-Schnitt: Die Extreme des Schwungs bleiben, die weichen Zwischenframes entfallen.
Normal Maps. Nimm die Normal Map in den Export auf (--export normal) oder das Licht-Kit (--export light-kit), das den Sprite in Godot, Unity oder GameMaker aus seinen Normalen beleuchtet, während jedes beleuchtete Pixel auf seiner eigenen Farbrampe bleibt. Siehe palettenkorrektes Licht.
Rüstung und Waffen. Ein Prop wird an einem Knochen befestigt: ein Schwert in einer Hand, ein Helm auf einem Kopf (--prop sword.glb:hand.r). Jeder Clip trägt es mit.
Animationen wiederverwenden. Clips aus anderen Dateien mit demselben Skelett kommen mit --anim dazu oder als Dateien namens model@clip.fbx neben dem Modell. Die Clips der Bewegungsbibliothek, lib:idle, lib:walk, lib:run, lib:attack und die übrigen, sind auf ein humanoides Skelett angepasst, sodass eine neue Figur einen Lauf und einen Angriff hat, bevor du irgendetwas animierst.
Von der Kommandozeile
Der Ritter oben, so wie ihn ein Build-Skript erzeugen würde:
pxr render knight.glb --preset selout --camera platformer --size 96 \
--clip lib:run --clip lib:attack --smart-frames 8 --export png,json,normal
Und die Korrektur: Ändere die Keys des Clips in deinem 3D-Programm oder hier die Frame-Anzahl und führe dieselbe Zeile erneut aus. Jeder Frame kommt im selben Maßstab und auf demselben Pivot heraus, sodass das neue Sheet an die Stelle des alten passt. Dieselbe Zeile über einen Ordner voller Modelle (pxr batch models/ --camera platformer --size 96) gibt einer ganzen Besetzung einen Look.
Dann nachbearbeiten
Die Frames von Dead Cells wurden in 3D fertiggestellt. Willst du handgezeichnete Details darüber legen, schreibt Pixor .aseprite-Dateien mit einem Tag pro Aktion, und ein erneutes Rendern behält die Ebenen, die du gemalt hast; siehe nachbearbeiten, dann neu backen. Die Geschichte der Technik, von den 1990ern bis heute, steht in vorgerenderte Sprites.
Fragen
Hat Dead Cells 3D-Modelle für seine Figuren benutzt?
Ja. Der Artist von Motion Twin, Thomas Vasseur, modellierte und riggte die Figuren in 3ds Max nach einem Pixel-Art-Modellbogen, animierte sie in 3D und renderte jeden Frame klein, ohne Anti-Aliasing und mit Normal Map, wie er im 2018 erschienenen Game-Developer-Deep-Dive beschreibt.
Ist Pixor das Werkzeug, das Dead Cells benutzt hat?
Nein. Dead Cells nutzte ein eigenes hauseigenes Programm. Pixor ist eine eigene App, die dieselbe Aufgabe erledigt, 3D-Animation hinein, Pixel-Art-Frames heraus, für jedes glTF-, FBX-, OBJ- oder .vox-Modell.
Wie groß waren die Figuren in Dead Cells?
Der Deep Dive sagt, die Höhe einer Figur im Spiel betrug nur etwa 50 Pixel, weshalb die 3D-Modelle sehr einfach bleiben konnten.
Weiterlesen
- Vorgerenderte Sprites
- Von 3D zu Pixel-Art: der komplette Leitfaden
- Vier Wege, ein 3D-Modell in Pixel-Art zu verwandeln
- Sprite-Größen für Pixel-Art-Spiele
- Selout: selektive Konturen
Probier es mit deinem eigenen Modell aus, kostenlos im Browser, oder hol dir die Vollversion.
Im Browser testen Pixor kaufen