Prozedurale Generierung: Computer werden kreativ
Vor zwanzig Jahren war prozedurale Generierung etwas ganz Neues. Mit automatisch generierten Galaxien erweiterten David Braben und Ian Bell 1984 das Bewusstsein der Spielergemeinde mit dem richtungweisenden Elite(öffnet im neuen Fenster) . Gleichzeitig zeigte das Weltraumspiel, wie man gigantische Spielwelten aus einfachsten Computern kitzeln und wie man sie in den kleinstmöglichen Speicher packen konnte.
In letzter Zeit waren es Hits aus der Indie-Szene, die man mit dem Begriff "prozedurale Generierung" in Verbindung bringt – die Blockwelten von Minecraft und zuletzt der ehrgeizige Weltraumerkundungstrip No Man's Sky(öffnet im neuen Fenster) . Warum ist prozedurale Generierung heute wieder verstärkt ein Thema? Wozu eignet sich das Verfahren überhaupt? Wie haben sich die technischen Möglichkeiten entwickelt? Und ist der Hype in ein paar Jahren wieder vorbei?

Krieger in der Sackgasse
Leonard Ritter kennt sich mit prozeduraler Generierung aus. Unter dem Künstlernamen paniq ist er Mitglied der Demogruppe Farbrausch. 2004 hat er die Entstehung des prozedural generierten Shooters Kkrieger aus der Nähe verfolgt und mit der Engine selbst die Demo Fr-038: Theta(öffnet im neuen Fenster) entwickelt.

Aktuell arbeitet er mit seiner Ehefrau Sylvia an einem Projekt, das augenscheinlich eine ähnliche Richtung einschlägt: Nowhere(öffnet im neuen Fenster) spielt in einer fremdartigen Welt mit Schwarzlichtoptik, bewohnt von intelligenten Wesen. Spieler müssen als Neugeborene ihre Sprache lernen und mit ihnen interagieren – ein Mammutprojekt, das die beiden Entwickler stemmen wollen, indem sie auf prozedurale Generierung setzen.

Wenn man Ritter fragt, was Spiele heute anders machen, sagt er mit Blick auf Kkrieger: "Der Arbeitsprozess war nur insofern prozedural, als dass die Texturen und Models mit Operatoren gebaut wurden, weil diese leichter zu packen waren." Die Absicht war nicht das Schaffen ungekannter neuer Welten, sondern Size Coding: "Maximaler Effekt mit minimaler Executable Size war damals das Ziel."
Kkrieger schaffte schier Unmögliches: Der Egoshooter zwängte sich auf 96 Kilobyte. Ritter will das Projekt aber nicht überbewerten. "Der gefühlte Konsens in unserer Gruppe damals war, dass Kkrieger eine nette technische Spielerei ist, aber nicht die Zukunft der 3D-Shooter-Entwicklung."
Size Coding hat Grenzen. Den Finger in die Wunde legte niemand Geringeres als Programmierlegende John Carmack. Er stand damals vor der undankbaren Aufgabe, die Spielewelt für Rage zu begeistern – einen Egoshooter, der drei DVDs füllen sollte. "Wir haben uns diebisch gefreut, als er sich in einem Interview fragen lassen musste, warum er so viel Speicherplatz benötigt" , erzählt Ritter. Aber Carmack antwortete, "dass man, um solche winzigen Größen erreichen zu können, den Künstlern sehr viel logisches Geschick abverlangen muss, was die kreative Entfaltung stark behindert. Das war korrekt."
Not macht erfinderisch: Unendliche Welten aus Ressourcenmangel
Prozedurale Generierung hat ein Wahrnehmungsproblem. Wenn wir darüber reden, meinen wir verschiedene Dinge. Wer aber ihre Möglichkeiten, ihre Chancen und ihre Zukunft beurteilen will, der muss differenzieren. Wo liegt ihr Potenzial? Was wird damit gemacht?
Kleine Brötchen
Prozedural generieren kann man alles Mögliche. Aber nach Einschätzung von Leonard Ritter war das Verfahren "schon immer in erster Linie auf Terrain-Modellierung konzentriert" . Ob Galaxien in Elite oder Wälder aus dem Zauberhut von Speedtree – fast immer beschränkt sich die Zufallsgenerierung auf die Kulissen der Spiele. Und häufig hilft der Zufall nur bei der Vorbereitung einer Umwelt, die eben doch festgezurrt beim Spieler ankommt. Generiert wird also einmalig auf dem PC des Programmierers, alle Spieler sehen dann dieselbe Welt.
Dass prozedurale Generierung überhaupt ein Trend ist, liegt nach Ritters Meinung an der Ressourcennot in der Indie-Szene: "Not macht erfinderisch. Du siehst als Programmierer das Muster hinter der Arbeit und denkst: Das könnte ich auch einen Computer machen lassen. Und dann entstehen Games wie Spelunky, Minecraft, Terraria und kürzlich Starbound."

Andy Hull hat als Programmierer an Spelunky(öffnet im neuen Fenster) mitgearbeitet. Er hat das Verfahren zur zufälligen Erstellung der Level(öffnet im neuen Fenster) nicht selbst geschrieben, aber eng mit Schöpfer Derek Yu zusammengearbeitet. Und er hat Großteile der künstlichen Intelligenz im Spiel programmiert. Die große Leistung verortet er nicht in Prozessoren, sondern im Kopf von Yu: "Ich glaube, Spelunky hätte man durchaus auch für das Sega Mega Drive umsetzen können. Schwierig ist es eher, clevere Wege zu erfinden, wie man mit prozeduraler Generierung interessante und nützliche Spielinhalte erschafft."
Hull ist allerdings nicht der Meinung, dass Spelunky etwas über die Möglichkeiten der Technik aussagt. "Natürlich öffnen programmierbare Shader sowie Fortschritte bei Rechenleistung und Speicherplatz neue Möglichkeiten. Ein Open-World-Spiel mit einer zufallsgenerierten Stadt wäre absolut machbar – mit zufällig erstellter Geometrie, Texturen, auch Passanten." Große Möglichkeiten also, die noch nicht ausgeschöpft werden.
Den Traum von kreativen Computern träumt auch Michael Cook. Der wissenschaftliche Mitarbeiter an der Goldsmiths-University in London hat selbst Spiele entwickelt. Vor allem aber lässt er Spiele machen. Er hat Angelina(öffnet im neuen Fenster) entworfen, ein KI-System, das Spiele entwickeln kann. Er ist mit vielen Indie-Entwicklern vernetzt und sieht große Fortschritte in der prozeduralen Generierung: "Dank der gesteigerten Rechenleistung ist es jetzt schneller möglich, zehntausend Dinge zu generieren und nach etwas Gutem zu durchsuchen."
Künstliche Welten mit Hirn: Kreative Computer
Aber er sieht auch mehr Abenteuerlust in der Szene. Spelunky und Minecraft hätten die Stärke und Schönheit des Verfahrens auf die Tagesordnung gesetzt, Titel wie Proteus das künstlerische Potenzial unterstrichen. "Inzwischen begeistert prozedurale Generierung die Leute. Das treibt Entwickler an, neue und ungewöhnliche Dinge damit zu erstellen. Können wir auch Erzählungen generieren? Regeln? Kunst? Ganze Spiele?"
.jpg)
Wer mit Cook redet, sieht schnell die möglichen Verbindungen von künstlicher Intelligenz und prozeduraler Generierung. Er hat Ideen, wie die Verfahren ineinandergreifen können, aber auch konkrete Beispiele. Eve Online etwa habe seine Galaxie mit einer KI-Technik entworfen. Es sei mehr möglich, denn es gebe insgesamt im KI-Feld beständig große Fortschritte. Leider seien die oft unsichtbar. "Werden Computer einmal bei einer Aufgabe richtig gut, dann nennt man es plötzlich nicht mehr KI. Dann wird es zur normalen Computeraufgabe erklärt. Man nennt das den KI-Effekt, und der führt wesentlich dazu, dass viele denken, bei KI tue sich nicht viel!"
KI in Zufallswelten muss mehr können
Auch Andy Hull verfolgt die Entwicklung und korrigiert sofort, als er nach Fortschritten bei künstlicher Intelligenz gefragt wird: "KI hat sich in den letzten Jahren stark weiterentwickelt. Aber was du meinst, ist KI in Spielen. Und komplexe, realistische KI ist da nicht unbedingt die beste Lösung." Als Beispiel fallen ihm Schleichspiele ein. "Wenn dich der Wächter einmal gesehen hätte, würde er nie wieder aufhören, nach dir zu suchen. Er würde 50 Mann Verstärkung anfordern und alles durchkämmen. Oder er würde mitten in seiner Patrouille innehalten und umdrehen, weil er gerade aufs Klo muss." Meist stehe also hinter dem vermeintlichen Stillstand eine bewusste Designentscheidung – um Spiele berechenbarer zu machen, damit Spieler Erfolg haben.
Auch einfach gestrickte Nichtspielercharaktere sind eine große Herausforderungen, wenn die Level nicht vorher feststehen. Das hat Hull bei Spelunky am eigenen Leib erfahren. "Mit festen Level-Layouts kann man mehr Dinge vorausberechnen, man kann Marker und Wege per Hand platzieren. Ist die Umwelt prozedural generiert, muss die KI viel robuster sein, um mit jedem möglichen Szenario zurechtzukommen."
Der Mehraufwand kann sich allerdings auf Dauer lohnen. "Du musst die KI nicht für jeden Level extra mitschreiben. So kannst du schneller neue Level erstellen und so etwas wie User-generated Content überhaupt erst ermöglichen."
Michael Cook will der KI nicht nur die Gegner überlassen, sondern ihre Möglichkeiten aktiver bei der prozeduralen Generierung einbeziehen. "Ich erforsche Computational Creativity(öffnet im neuen Fenster) , und da interessieren wir uns für Software, die Inhalte auch bewerten kann, die sich fragen kann, ob ein Ergebnis dem entspricht, was sie herausbekommen wollte. Die Änderungen einbezieht, lernt und besser wird." Allzu oft beschränke sich die prozedurale Generierung aktuell darauf, eine "kleine Version von uns selbst" zu basteln, die Level erstelle. Statt dessen gehe es darum, eigenständig kreative und innovative Software zu schaffen.
Realitätschecks vor der Tür
Viel Potenzial sehen die Gesprächspartner darin, dem Computer mehr Aufgaben zu übertragen. Vor allem die Indie-Szene ist für sie der natürliche Ort, aus dem Impulse für das ganze Feld kommen können. Michael Cook begründet das mit den Vorlieben der Indie-Entwickler: "Sie mögen Experimente, sie mögen Risiko, sie mögen Neues. All das bietet prozedurale Generierung. Sie kann überraschend sein. Sie kann neue Erfahrungen schaffen oder völligen Müll."
Andy Hull glaubt, dass auf Dauer niemand an prozeduraler Generierung vorbeikomme. "Sie eignet sich besonders gut für Indies, da so auch kleine Teams riesige Mengen Inhalt schaffen können. Ich glaube aber auch, dass wir solche Techniken immer stärker in Großproduktionen sehen werden." Insgesamt habe die Grafikleistung ein so hohes Niveau erreicht, dass es auch wirtschaftlich immer sinnvoller werde, sich nicht mit schierer Produktionswucht vom Markt abzuheben.
Leonard Ritter weiß, warum heute eine bessere Zeit ist, auf das Verfahren zuzugreifen. "Du findest heute für fast jedes Problem im Internet innerhalb von einer Stunde eine Lösung. Ich habe hier noch alte Bücher über Shader, Systemprogrammierung, Graphentheorie, genetische Programmierung. Die sind jetzt alle hinfällig." Und die Indie-Szene teilt zu Ritters Freude eifrig ihr Wissen. Kaum habe er auf Twitter ein Wiki zu prozeduraler Generierung(öffnet im neuen Fenster) angeregt, habe ihm jemand eines gezeigt, das schon online ist. In dem Geist arbeitet auch Ritter: Seine selbstentwickelte Engine für Nowhere ist Open Source.
Es klingt so, als bleibe die prozedurale Generierung der Spieleentwicklung nicht nur erhalten, sondern werde eine immer größere Rolle spielen. Wer an einen Hype noch nicht recht glauben mag, kann zwei Realitätschecks in den Kalender eintragen: "No Man's Sky" von Hello Games wird voraussichtlich noch 2014 erscheinen. Es lockt mit dem vollmundigen Versprechen, "jedes Atom" der Spielgalaxie werde prozedural generiert. "Nowhere" will uns Ende 2015 beweisen, dass man inzwischen ganze Parallelwelten mit künstlich intelligenten Bewohnern gestalten kann.
- Anzeige Hier geht es zu Künstliche Intelligenz: Wissensverarbeitung bei Amazon Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.