/tech: Kayn im Partikelfieber

von Riot Jengles

/tech ist eine neue Reihe von Artikeln, die die Technik hinter League of Legends erkundet. Wenn dir dieser Beitrag gefällt, sieh dir doch auch den „Riot Games“-Technikblog für noch komplexere Hintergründe an.


Sollten Sensen nicht bei der Ernte verwendet werden? Ja. Bei der Seelenernte.

Eine der größten Herausforderungen bei der Entwicklung eines Spiels, das so groß ist wie League of Legends und so häufig aktualisiert wird wie League of Legends, liegt darin, größere Veränderungen an unseren Programmen für das Spiel vorzunehmen, ohne etwas kaputt zu machen. Hallo, ich bin John „Riot Jengles“ Englund, technischer Künstler verantwortlich für unsere künstlerischen Hilfsmittel und möchte zeigen, wie wir ein brandneues Bearbeitungswerkzeug für visuelle Effekte entwickelt haben – rechtzeitig zur Veröffentlichung von Kayn, unserem neusten Dschungelassassinen, der durch Wände gehen und andere Champions heimsuchen kann. (Aber nicht meine Champions! Ich spiele unbewegliche AD-Carrys und halte mich an eine strikte „Kayn wird immer gebannt“-Regel in der Championauswahl.)

EIN NAME, EINE MISSION

Unser Team erstellt Werkzeuge und Technik, durch die Rioter den Spielern das beste Ergebnis liefern können (und mit „beste“ meinen wir, was für das entsprechende Team im Kontext ihrer Arbeit das Beste ist). Dafür stellen wir ihnen Software zur Verfügung, die die iterative Entwicklung von Inhalten so effizient wie möglich machen soll. Deswegen heißt unser Team passenderweise „Inhaltseffizienz“! Wir sind für die unterliegende Plattform verantwortlich, auf der alle Spieldaten von LoL liegen, sowie für die Werkzeuge der Designer und Künstler, mit denen sie die Eigenschaften für Champions, Skins, Fähigkeiten und mehr bearbeiten.

Gegen Ende letzten Jahres hatten wir uns entschieden, dass es an der Zeit für ein brandneues Bearbeitungswerkzeug für visuelle Effekte war. Warum? League hat über 110.000 verschiedene visuelle Effekte. Sie sind ein großer Teil davon, was die Action im Spiel zum Leben erweckt, und Spieler sagen uns oft, dass diese Effekte ausschlaggebend für ihren Spielspaß bezüglich Champions, Skins, Gegenständen, Karteneffekten und so weiter sind.


Anders als animierte Charaktere werden visuelle Effekte nicht dadurch erstellt, dass unterschiedliche Posen ineinander übergehen. Die Effekte werden prozedural animiert und über einen Zeitraum vom Spiel simuliert. Sie bestehen aus einem oder vielen Partikelsystemen – Sammlungen von Partikelemittern, deren Verhalten und Aussehen vom Effektkünstler durch Texturen, Geometrie und andere Steuerelemente definiert werden. Wenn du mehr über die Kunst der Effekterstellung lernen möchtest, sieh dir diesen Artikel von RiotPhoenix an, einem Effektkünstler von Kayn, der uns bei der Entwicklung und Testphase des neuen Werkzeugs geholfen hat!


Wie du siehst, sind qualitativ hochwertige Effekte ein wesentlicher Teil des Spiels, aber unser Erstellungsablauf war ziemlich in die Jahre gekommen. Es gab keine Schaltfläche fürs „Rückgängig machen“, was ein Herumexperimentieren mit Änderungen erschwerte. Die Effektkünstler mussten außerdem das Spiel laufen lassen, ihren Effekt speichern und darauf warten, dass er neut lädt, um das Ergebnis ihrer Arbeit zu sehen. Es gab keine Möglichkeit, den Effekt direkt anzuzeigen. Zu guter Letzt wurden alle Effektdateien in unserem alten Dateisystem gespeichert, für das eine Menge manuelle Verwaltung von Ordnern und Dateinamen nötig war. Es war schwierig nachzuvollziehen, welche Dateien im Spiel für einen Effekt verwendet wurden.

WO IST ALSO DER KNOPF ZUM VERBESSERN?

Es war nicht leicht, ein besseres Effektwerkzeug anzufertigen, aber überraschenderweise war das nicht der komplizierteste Teil. Ein neues Werkzeug in eine Produktumgebung mit engen Fristen einzuführen, die alten Daten in das neue System zu übertragen und sicherzustellen, dass die Künstler mit minimaler Unterbrechung überwechseln können – das war eine ganz andere Geschichte.

Als Erstes mussten wir klären, ob unsere Effektkünstler hinter dieser Idee stehen, sich dafür begeistern und im Entwicklungsprozess involviert sind. Ohne ihr Wissen hätten wir niemals das Richtige entwickeln können. Die Effektkünstler waren bereits an die Handhabung ihres momentanen Effektbearbeitungswerkzeugs gewöhnt und damit zufrieden (trotz einiger seiner Schwächen), was ihre Messlatte für etwas Besseres ziemlich hoch setzte.

Außerdem hatte es diesen leckeren Ladebildschirm:

Ja, das alte Werkzeug hieß „Syrup“ und ja, das ist ein Frühstückstaco, auf dem ein Comictaco steht.


Wie soll man das nur überbieten? Wir haben mit vielen Ideen angefangen, wie die existierende Oberfläche verbessert werden kann – schickere Diagramme, neue schöne Tabellen und geschickte Vereinfachungen – aber schlussendlich hatten die größten Engpässe im Arbeitsverlauf kaum etwas mit der Oberfläche selbst zu tun. Deswegen sahen wir es als angebracht, die meisten Funktionen des alten Werkzeugs in unser neues System zu übertragen. Selbst die besten Verbesserungen bei einer Softwareoberfläche verursachen vorübergehende Effizienzeinbußen (wie die Neuerlernung des neuen Systems), weshalb wir uns für eine bereits bekannte Oberfläche entschieden, um die Umstellung zu erleichern.

„Syrup“ im Vergleich zu „Particle Town“. Ähnlich, aber etwas aufgeräumter und mit einem neuen Viewer! Oh, und ein „Rückgängig machen“!

Wir haben den Hauptteil unseres technischen Aufwands in einen reibungslosen Übergang für die alten Daten und die Effektkünstler gesteckt. Zusätzlich zu der bekannten, von „Syrup“ inspirierten Oberfläche haben wir Werkzeuge entwickelt, die den Künstlern bei der Umwandlung der alten Daten in das neue System helfen sollten – wie Texturen, Gitter und Partikelsysteme, aus denen sich die visuellen Effekte zusammensetzen. Wir haben sogar dafür gesorgt, dass die Künstler Daten aus dem alten Werkzeug kopieren und in das neue einfügen konnten.

Sicher zu sein, dass die Künstler mit dem Werkzeug umgehen können, ist schön und gut, aber wie setzen wir es in der Realität ein?

WILLKOMMEN IN „PARTICLE TOWN“, MEISTER KAYN!

Wir mussten ein paar nette Effektdaten für unser neues Werkzeug finden, das wir „Particle Town“ getauft hatten. Etwas mit Substanz, das gerade in Bearbeitung war, um die Datenumwandlung zu testen, aber nicht zu weit im Entwicklungsprozess, dass wir eine Frist gefährden könnten.

Wir haben das Championteam gefragt, und sie hatten genau das Richtige für uns: einen Champion mit drei verschiedenen Formen und visuellen Effekten, so weit das Auge reicht.

Zeit für Kayn, den Schatten des Todes.


Du magst also Vollbildeffekte, hab ich gehört?

Das Champteam hat natürlich seine eigenen Fristen und wir wollten nicht garantieren, dass sie mit dem neuen Werkzeug sofort schneller sein würden. Wahrscheinlich wären sie aufgrund der Umgewöhnung sogar eher etwas langsamer! Wir waren uns sicher, dass das Werkzeug zukünftig die Effizienz steigern würde, aber wir mussten unsere Erwartungen realistisch halten und uns ausdrücklich darauf konzentrieren, dass wir alles uns Mögliche an eine pünktliche Fertigstellung von Kayn setzten.

Was haben wir also gemacht? Wir haben drei Monate mit der Entwicklung eines MVPs („Minimum Viable Product“ – ein minimal funktionsfähiges Produkt) verbracht, in denen sich unser gesamtes Team diesem Werkzeug widmete. Wir haben viel Zeit darauf verwendet, mit den Effektkünstlern zu kommunizieren, um stets sicher zu sein, dass wir auf dem richtigen Weg sind. Manche Dinge wurden zurückgeschraubt (wie ein aufwendiger Diagrammeditor) – nicht, weil das Design nicht cool war, sondern weil andere Faktoren eine höhere Priorität hatten. Wir wussten, dass wir nach der Veröffentlichung eines simplen Werkzeugs noch Zeit für Feinarbeiten hatten. Ein weiterer Vorteil eines minimalen Startprodukts mit kurzer Entwicklungszeit ist, dass man schnell Feedback darüber sammeln kann. Das direkte Benutzerfeedback von Experten ist unheimlich wertvoll für zukünftige Verbesserungen und hilft uns, Zeit zu sparen, die wir für weniger nutzbare Funktionen vergeudet hätten.


Das unheilvolle Leuchten von Kayns Kriegssense, direkt aus „Particle Town“.

Dann endlich gegen Ende März war es soweit … und der Start war etwas holprig! Daten kamen beschädigt an, das Programm lief manchmal nur im Schneckentempo oder stürzte sogar gleich komplett ab. Während dieser Umstellung waren eine gute Beziehung zu den Künstlern und eine unmittelbare Unterstützung unentbehrlich. Wir haben um die 100 Seiten an Feedback und über 150 Fehlermeldungen und Funktionsanfragen erhalten, und wir hatten nicht mit eingerechnet, dass die Bearbeitung dieser Anfragen die Künstler ebenfalls Zeit kostete. Wir haben so schnell wie möglich daran gearbeitet und an manchen Tagen über 10 Mal täglich etwas an dem Werkzeug geändert.

Glücklicherweise hatte sich alles nach kurzer Zeit stabilisiert und wir konnten die Früchte unserer Arbeit bewundern. Wir bekamen Feedback von Künstlern, die stundenlange Arbeit dank der „Rückgängig machen“-Funktion retten konnten, und andere waren begeistert davon, dass sie ihre Änderungen sofort im neuen Viewer und im Spiel sehen konnten. Und als Krönung fanden sie einige Hilfsmittel, mit denen Kayn schneller entwickelt werden konnte als in unserem alten Werkzeug!


Das Ziel von Kayns R wird nach links verschoben, um Richtungselemente zu testen; volle Fähigkeit auf der rechten Seite.

Ein Beispiel ist Kayns ultimative Fähigkeit. Man kann sie in jede Richtung wirken, also musste die Qualität der Effekte in jede Richtung getestet werden. Früher mussten die Künstler das Spiel laden, ein Ziel auswählen, R darauf ausführen, das Ziel bewegen, erneut R ausführen und das ganze wiederholen, bis sie es aus jedem Winkel gesehen hatten. Mit dem neuen Vorschaufenster konnten sie das Ziel einfach verschieben und den Effekt in jede Richtung direkt sehen.


Selbst ohne Blut ist das Q verheerend.

Ein anderes interessantes Beispiel ist der Treffereffekt von Kayns Q. Aufgrund der verschiedenen Voraussetzungen für manche Regionen mussten wir zwei Versionen liefern – eine mit Blut und eine ohne. Normalerweise hätte der Künstler das Spiel laden müssen, um den Effekt zu sehen, aber jetzt konnten sie im Vorschaufenster einfach den „zensierten Modus“ aktivieren.

EIN NEUER STERN AM PARTIKELHIMMEL


„Neeeeeeein. Nein nein nein.“ – Jhin

Was haben wir also gelernt? Ein solch komplexes Werkzeug während eines engen Produktzeitplans fertigzustellen, ist sehr heikel. Aber das war uns bereits bewusst. Wir haben gelernt, dass wir darin besser werden. Wir hatten in der Vergangenheit problematischere Programmeinführungen. Diese war besonders gut, da wir alle Betroffenen (Künstler, Entwickler, Produzenten) auf unserer Reise dabei hatten. Wir haben wahrscheinlich genauso viel Zeit für die Kommunikation, Erwartungshaltungen und das Lernen von den anderen verwendet wie für die Entwicklung des Werkzeugs. Der gesamte Prozess wird uns hoffentlich – obwohl er noch nicht abgeschlossen ist – das nötige Selbstbewusstsein geben, entscheidende Veränderungen im künstlerischen Arbeitsverlauf vorzunehmen. So werden wir weiterhin allen Spielern die bestmöglichen Inhalte bieten können!

Außerdem haben wir nun vielleicht die Option, visuelle Effekte etwas freier einzusetzen, wenn wir sie leichter erstellen können. Was denkst du, wo können wir ein paar weitere, hübsche Effekte einbauen?


10 months ago