Hunderte Spiel-Assets in einem einheitlichen Stil mit Z-Image, einem LoRA und Meshy

Trainiere ein Stil-LoRA mit 5–10 eigenen Bildern, erzeuge mit Z-Image Turbo in ComfyUI Hunderte Charaktere und Props in diesem Stil und verwandle die besten mit Meshy in 3D-Modelle.

Anton Tenitsky13. Oktober 20266 Min. LesezeitVideoversion unten

Diese Anleitung wurde mit KI aus dem Englischen übersetzt und kann Fehler enthalten. Zum Original.

Ein stilisiertes, 3D-wirkendes Kompass-Spiel-Asset, erzeugt mit Z-Image Turbo und einem eigenen Stil-LoRA

Jedes Spiel braucht Hunderte Assets, die zusammenpassen. Jedes davon kann als Bild beginnen und in ein 3D-Modell verwandelt werden. Dieser Leitfaden baut diese Bildbasis auf:

  1. Ein Stil-LoRA trainieren mit einer Handvoll eigener Bilder.
  2. Hunderte Charaktere und Props erzeugen in diesem Stil mit Z-Image Turbo in ComfyUI, aus einer Prompt-Liste, die von allein läuft.
  3. Die besten Bilder in 3D-Modelle verwandeln mit Meshy, dem einfachsten 3D-Generator, den ich genutzt habe. (Für einen Open-Source-Weg siehe TRELLIS 2.)

Kurz gefasst

  • Stil-LoRA: 5–10 Bilder, auf fal für 1,70 $ bei 2.000 Schritten trainiert.
  • Generierung: etwa 10 Sekunden pro 1K-Bild auf einer RTX 5090.
  • Prompts: 500 davon, einer pro Zeile, automatisch durchlaufen mit meinem kostenlosen Prompt-Cycler-Node.
  • Auswahl: etwa 2.000 Bilder erzeugen, die besten 300 behalten.
  • 3D: ein Bild in Meshy ziehen, generieren, dann texturieren. Etwa eine Minute pro Stück.

Schritt 1: Ein Stil-LoRA trainieren

Ein LoRA ist ein kleines Zusatzmodell, das einem großen Modell einen bestimmten Look beibringt. (Was LoRAs sind, erkläre ich ausführlicher in so trainierst du ein LoRA auf den Stil eines beliebigen Künstlers.) Hier hält es Hunderte Assets in einem Stil.

Ich habe meines auf fal mit dem Z-Image Turbo Trainer trainiert:

  1. Füge etwa 10 Bilder im gewünschten Stil hinzu. Fünf sind das Minimum. Ich habe meine eigenen Arbeiten aus der Zeit vor der KI verwendet.
  2. Lege ein Trigger-Wort im Feld für die Standard-Bildunterschrift fest. Es darf kein gewöhnliches Wort sein, nimm also eine erfundene Kombination aus Buchstaben und Zahlen. Meines ist CASUAL3D. Wenn es in einem Prompt auftaucht, schaltet sich der Stil ein.
  3. Lass die Schritte bei 2.000 und klicke auf Start. Das hat mich 1,70 $ gekostet.
fals Z-Image-Turbo-Trainer mit zwei hinzugefügten Schwarz-Weiß-Bildern von Kreaturen, Schritte auf 2000 und einem Feld für die Standard-Bildunterschrift
Der Z-Image-Turbo-Trainer auf fal: Bilder hinzufügen, das Trigger-Wort als Standard-Bildunterschrift setzen, 2.000 Schritte beibehalten.
fals Preishinweis: 0,85 $ pro Trainingslauf mit 1000 Schritten, ein Lauf mit 2000 Schritten kostet also 1,70 $
fal zeigt den Preis vor dem Start: 0,85 $ pro 1.000 Schritte.

Wenn es fertig ist, lade die .safetensors-Datei herunter. Sie kommt mit einem generischen Namen wie pytorch_lora_weights_step_2000.safetensors, also benenne sie sofort in etwas um, das sagt, was sie ist, zum Beispiel Z-Image-Turbo-Casual3D-LoRA.safetensors. Lege sie dann in ComfyUI/models/loras/, sonst findet der LoRA-Loader sie nicht.

JupyterLab mit dem Ordner models/loras von ComfyUI, der die Z-Image-Turbo-Casual3D-LoRA-Datei enthält
Das umbenannte LoRA in ComfyUI/models/loras.

Schritt 2: ComfyUI einrichten

Ich führe das auf einem RunPod-Pod aus. Das Ein-Klick-Template samt meinem LoRA gibt es auf meinem Patreon. Wenn du ComfyUI lokal betreibst, springe zum Workflow.

  1. Lege ein Network Volume von etwa 50 GB an, genug für Modelle und Bilder, etwa 3,50 $ im Monat und stundenweise berechnet, solange es existiert. So werden die Modelle (Z-Image Turbo, der Qwen-Text-Encoder und der Rest) einmal statt jedes Mal heruntergeladen, was pro Sitzung etwa 12 Minuten spart.
  2. Stelle das Template auf der günstigsten GPU bereit (ab etwa 0,26 $/Std.) für den ersten Start, während alles heruntergeladen wird. Das dauert 12–15 Minuten.
  3. Wechsle auf eine RTX 5090 auf demselben Volume, wenn du bereit bist, in großer Menge zu generieren.

Meine Einführung in RunPod behandelt Volumes und Pods im Detail.

Schritt 3: Der Generierungs-Workflow

Der Workflow ist ein Standard-Z-Image-Graph mit zwei Ergänzungen: dem LoRA und einer Prompt-Liste.

Die Modell-Lade-Nodes in ComfyUI: Diffusionsmodell z_image_turbo_bf16, Text-Encoder qwen_3_4b mit Typ lumina2 und das ae-VAE, mit einer erklärenden Notiz
Die drei Modell-Loader: Z-Image Turbo, der Qwen-Text-Encoder und das VAE.
  • Load Diffusion Model: z_image_turbo_bf16.
  • Load CLIP: der Qwen-3-4B-Text-Encoder (Typ lumina2), der deinen Prompt in Vorgaben für das Bild umsetzt.
  • Load VAE: das VAE, das mit Z-Image Turbo kommt. Das VAE (Variational Autoencoder) wandelt das Ergebnis aus dem latenten Raum in Pixel um.
  • Load LoRA: dein Stil-LoRA, das den Modell-Eingang des Samplers speist.

Die Prompt-Liste

Die Prompts kommen aus meinem Prompt-Cycler-Node, der kostenlos ist. Installiere ihn über den ComfyUI Manager mit „install via Git URL“. Er enthält eine Liste, ein Prompt pro Zeile, und jeder Durchlauf nimmt die nächste Zeile.

Der Prompt-Cycler-Node, gefüllt mit langen Charakterbeschreibungen, die jeweils mit dem Trigger-Wort CASUAL3D beginnen
Jede Zeile ist ein Asset, und jede beginnt mit dem Trigger-Wort.

Bitte einen Chatbot (Gemini, ChatGPT oder Claude), Beschreibungen der gewünschten Objekte zu schreiben, eine pro Zeile, jede beginnend mit deinem Trigger-Wort. Eine Zeile könnte lauten: „CASUAL3D pirate captain wearing an ornate tricorn hat…“. Meine Liste hat 500 Prompts. Ein paar Dinge, die ich beim Schreiben gelernt habe:

  • Bei Charakteren eine T-Pose verlangen und Proportionen angeben. Das macht den 3D-Schritt und das Rigging viel einfacher.
  • Detaillierte und kurze Prompts mischen. Weniger Beschreibung gibt dem Modell manchmal mehr Freiheit und ein besseres Ergebnis.
  • Props einbeziehen, nicht nur Charaktere.

Der Prompt gelangt über eine String-Verbindung in den Text-Encoder. Ein Vorschau-Node zeigt, welcher Prompt gerade läuft. Den negativen Prompt lasse ich leer, weil Z-Image mit positiven Prompts allein gut zurechtkommt.

Auflösung und Sampler

Der Node Empty Latent Image legt die Größe fest. Im Workflow steht eine Notiz mit Auflösungen, die mit Z-Image gut funktionieren; ich habe 1K genutzt. Den KSampler lasse ich bei den Einstellungen, mit denen der Workflow ausgeliefert wird. Sobald du Werte hast, die für ein Modell funktionieren, gibt es kaum etwas zu gewinnen, wenn du daran herumschraubst.

Speichern: der Trick mit dem lokalen Speichern

Auf einem Pod schreibt der normale Save-Image-Node auf das Network Volume, du müsstest also jedes Bild über JupyterLab abholen. Der Workflow hat außerdem einen Node Local Save Image, der jedes Bild direkt in den Download-Ordner deines Browsers schickt. Erlaube mehrere Downloads, wenn dein Browser fragt.

Der Node Local Save Image in ComfyUI mit einer Notiz zum Erlauben mehrerer Downloads im Browser
Local Save Image lädt jedes Ergebnis auf deinen Computer herunter, sobald es fertig ist.

Schritt 4: Ausführen, dann die besten auswählen

Reihe mit Run (Instant) ein, und es arbeitet die ganze Liste ab. Auf einer RTX 5090 braucht jedes Bild etwa 10 Sekunden; größere GPUs drücken es auf ein paar Sekunden. Das erste Bild nach dem Laden ist langsamer, und gelegentlich hängt der erste Durchlauf auf RunPod. Wenn lange nichts passiert, starte ComfyUI neu und versuche es erneut.

Eine erzeugte Piratenfigur in T-Pose im Stil des LoRA, in ComfyUI angezeigt
Ein gutes Ergebnis: T-Pose, saubere Silhouette, im trainierten Stil.
Eine zweite erzeugte Piratenfigur in T-Pose mit gestreiftem Hemd und rotem Kopftuch
Ein weiterer Charakter aus derselben Liste, im selben Stil.

Nicht jedes Bild funktioniert. Manche haben seltsame Finger, kaputte Teile oder Props, die in der Luft schweben. Bei quelloffenen Modellen ist die Trefferquote gut, aber plane die Auswahl ein: Erzeuge etwa 2.000 Bilder und behalte die besten 300.

Schritt 5: Bilder mit Meshy in 3D verwandeln

Meshy ist das einfachste Bild-zu-3D-Werkzeug, das ich genutzt habe:

  1. Öffne deinen Workspace und ziehe ein Bild hinein.
  2. Meshy erzeugt zuerst ein graues Modell.
  3. Klicke auf Texture. Nach etwa einer weiteren Minute hast du ein texturiertes Modell aus dem Bild.
Meshys Workspace mit einem untexturierten grauen 3D-Modell einer Piratenfigur
Zuerst das graue Modell.
Dieselbe Piratenfigur in Meshy nach der Texturierung, in voller Farbe
Dann die texturierte Version, etwa eine Minute später.

Das Bild für Bild zu tun, ist für ein paar Assets in Ordnung. Für Hunderte gibt es zwei Wege zur Automatisierung: Meshy hat eine API, die du aus einem Skript aufrufen kannst, oder du bleibst ganz bei Open Source mit TRELLIS 2 in ComfyUI. Die Qualität von TRELLIS 2 ist geringer als die von Meshy, aber es läuft auf deiner eigenen GPU oder einer gemieteten, über einen ganzen Ordner auf einmal.

Die Meshy-Links sind Empfehlungslinks, ebenso mein RunPod-Empfehlungslink: Neue RunPod-Konten, die sich mit Google anmelden, erhalten nach ihren ersten 10 $ ein Guthaben von 5–500 $, und ich bekomme eine kleine Provision.

Die Videoversion ansehen (13:30)

Alles oben steht auch im Video, falls du lieber am Bildschirm mitmachst. Das Video ist auf Englisch.

Häufige Fragen

Wie viele Bilder brauche ich, um ein Stil-LoRA für Z-Image zu trainieren?

Etwa 10 im gewünschten Stil, mindestens 5. Ich habe meine eigenen Arbeiten aus der Zeit vor der KI verwendet.

Wie viel kostet das Training eines Z-Image-LoRA auf fal?

Bei den üblichen 2.000 Schritten kostete es mich 1,70 $.

Wie schnell ist Z-Image Turbo?

Etwa 10 Sekunden pro Bild auf einer RTX 5090 bei 1K-Auflösung und ein paar Sekunden auf größeren GPUs. Das erste Bild nach dem Laden ist langsamer.

Wie viele Bilder sollte ich für ein Spiel erzeugen?

Viel mehr, als du brauchst. Manche kommen mit seltsamen Fingern, kaputten Teilen oder in der Luft schwebenden Props heraus. Ich würde 2.000 erzeugen und die besten 300 auswählen.

Anton Tenitsky ist 3D-Artist mit mehr als 15 Jahren Erfahrung in der Computergrafik, tätig für Nickelodeon, Gameloft, Marvel Rivals und viele weitere Kunden. Mehr über mich

Ähnliche Anleitungen