Moderne Spieleentwicklung – nur mit Informatik-Studium?
Ist Spieleentwicklung nur was für Menschen mit Hochschulabschluss? Nein: Man muss nicht unbedingt Informatik studiert haben, um Computerspiele programmieren zu können. Joachim Mertens ist Spieleentwickler bei Tiny Tap Gems, die Macher von Cold Crash, Hover Disc 3, Malspaß und anderen erfolgreichen Apps und Spielen. Er weiß: Natürlich kommt es beim Entwickeln von Spielen auf technisches Fachwissen an. Doch wirklich entscheidend ist etwas ganz anderes.
Wenn die Kinder im Bett sind, holen normale Eltern die Süßigkeiten und den Wein raus. Nicht so die Eltern von Joachim Mertens, Spieleentwickler bei Tiny Tap Gems. „Irgendwann Mitte der 1980er-Jahre haben meine Eltern mir einen Commodore 64 geschenkt, den damals populärsten Computer für Privatleute überhaupt. Sie hatten den Rechner schon zwei Monate vor Weihnachten gekauft, und wenn ich im Bett war, haben sie alles ausgepackt und Programme aus Zeitschriften abgetippt. Die haben sich richtig fürs Programmieren begeistert!“
Spieleentwicklung zu Hause: Eltern programmieren Spiele – in den 80er-Jahren
Programmierende Eltern? In den 80er-Jahren war das noch eine Seltenheit. „Im Nachhinein finde ich das auch sehr ungewöhnlich“, sagt Joachim Mertens, „die haben sogar gezockt: Moon Patrol, bis zum Abwinken!“ Als der Sprössling dann selber anfing, zu spielen, und die Eltern schnell überholte, war der Frust bei den Erzeugern greifbar.
Ende der 80er-Jahre gibt es noch kein YouTube, keine Seiten wie Stack Overflow oder Wikipedia. Wissen kommt in Büchern, und ohne Handbücher geht es nicht. „Na klar hab‘ ich mir damals auch ein Buch gekauft, in dem erklärt wurde, wie BASIC funktioniert“, sagt Mertens. BASIC ist eine Programmiersprache, geeignet für Einsteiger, für die ersten Schritte. Für komplexe Software sind andere Sprachen besser geeignet, C++ zum Beispiel gehört zu den Sprachen, die sich weltweit durchgesetzt haben.
„Damals haben wir noch vor Fernsehern gesessen, eineinhalb Meter vor so einer Strahlenkanone“, erinnert sich Mertens an die Zeit der Röhrenfernseher. „Wir mussten damals ganz anders mit der Maschine umgehen als heute“, so Mertens, „es gibt so viele Tools und Werkzeuge heute, die uns viel Arbeit abnehmen, ganze Entwicklungsumgebungen wie Unity. Dafür sind heute die Projekte aber auch viel umfangreicher.“
Und: „Heute kann man das Entwickeln von Computerspielen ja sogar studieren, Game Design, Informatik. Wenn ich heute anfangen würde, zu programmieren, würde ich erstmal versuchen, herauszufinden, was für mich persönlich die beste Entwicklungsumgebung ist. Und YouTube-Tutorials gucken. Bücher sind auch cool, aber so ein Video-Tutorial ist eingängiger, leichter, du lernst das ganze Handling.“
Cold Crash – Das Skript
Xcode
Cold Crash nutzt rund 1% des CPU
Das versteckte Entwicklermenü von Cold Crash. „Mountain of Madness“ war der Arbeitstitel der Story.
„Mathe hilft beim Entwickeln von Computerspielen“
Muss man wirklich gut in Mathe sein, um Spiele programmieren zu können? Oder geht es vielleicht auch ohne, mit modernen Entwicklungsumgebungen, die den Programmierern viel abnehmen? Mertens: „Es ist tatsächlich so, dass da schon einigermaßen viel Mathe drin ist. Sagen wir mal: Du programmierst eine zielsuchende Rakete. Du kennst die Position der Rakete und die Position des Ziels. Die Rakete muss sich richtig drehen und richtig fliegen, du musst die Funktion dafür kennen – Sinus, Cosinus, Arcus Tangens… Das ist alles kein Hexenwerk, aber es ist nicht schlecht, wenn man ein bisschen Mathe kann.“
Viele Entwickler betonen, wie wichtig die persönliche Ausdauer ist, die Lust am Tüfteln. „Man muss Bock haben, sich da reinzufuchsen, das zu lernen. Mit einer halben Stunde YouTube-Tutorial ist es nicht getan“, erklärt Joachim Mertens von Tiny Tap Gems.
Spieleentwicklung braucht ein ganzes Team – Programmierer, Grafiker, Musiker, Projektplaner, Kaufleute
Je nach Projekt ändert sich die Zusammensetzung eines Teams, so ist es auch bei Tiny Tap Gems. Ein Programmierer allein kann vielleicht das Gerüst herstellen, aber für ein fertiges Spiel ist viel mehr nötig: Grafiken, Musik, Soundeffekte, um nur ein paar Beispiele zu nennen. „Bei kleineren Projekten kommt man vielleicht auch mit eingekauften Grafiken aus“, beschreibt Tiny Tap Gems-Programmierer Joachim Mertens, „die bekommt man inzwischen sogar in der Entwicklungsumgebung, im Unity Store zum Beispiel. Aber es ist natürlich viel schöner, mit einem Kollegen zusammenzuarbeiten.“
Musik und Grafiken gibt es vorproduziert zu kaufen, etwa bei audiojungle oder bei shutterstock. Dort sind die Kosten überschaubar und die Elemente sind sofort verfügbar. Die Nachteile: Die Inhalte sind nicht exklusiv, jeder kann sie kaufen, und sie müssen zum Spiel passen. Wenn sich mittendrin der Grafik-Stil ändert, weil man Elemente von einem anderen Anbieter gekauft hat, ist das ein Bruch in der Immersion, den der Spieler erstmal verdauen muss. Immersion beschreibt den Zustand, in dem ein Spieler sich ganz auf das Spiel konzentriert und geistig in die Spiele-Welt eintaucht.
Prototyping in der Spiele-Entwicklung
„Ich mache immer erst eine grobe Planung und versuche, möglichst schnell die Game-Mechanik zu programmieren“, sagt Mertens, „da arbeite ich viel mit Platzhaltern und dann kann ich gucken, ob es überhaupt funktioniert, ob es überhaupt Spaß macht. Prototyping am Anfang ist ein erfolgreiches Konzept.“
Ein Beispiel: Beim Tiny Tap Gems-Titel Hover Disc geht es darum, auf einem Spielbrett die eigenen Scheiben auf Zielfelder zu schieben, die dann Punkte geben. In einer frühen Game-Mechanik funktionierte das so, dass die Spieler frei wählen konnten, welche ihrer vier Discs sie schieben. „Das habe ich nach einigen Tests geändert“, sagt Mertens, „so dass man die Discs immer nur eine nach der anderen bewegen konnte. Ein anderes Konzept auszuprobieren ist oft aufschlussreich, im Fall von Hover Disc bringt es den Spieler in interessantere Situationen, die einfach spannender sind. Sowas kriegt man nur raus, wenn man rumexperimentiert.“
Spiele programmieren: Einfach loslegen, der Markt spielt am Anfang keine Rolle
„Ganz am Anfang der Laufbahn eines Programmierers spielt der Markt überhaupt keine Rolle. Es geht ja darum, die eigenen Fähigkeiten zu entwickeln“, beschreibt Joachim Mertens. „Da gibt es nur die Idee und man probiert aus, ob das funktionieren kann. Später kann man sich am Markt orientieren.“
Spätestens dann spielt auch das Thema Geschmack auf einmal eine Rolle. „Wenn fünf von zehn Spiele-Testern sagen, ihnen gefallen die blauen Steine nicht, und du machst die dann rot, wird das Spiel dann besser? Vielleicht finden es dann die anderen fünf Testern blöd.“ Mertens gibt den Tipp, sich um Geschmack und Design gerade am Anfang einer Karriere als Spiele-Entwickler nicht zu sehr zu kümmern. „Weil man es eh nicht allen recht machen kann. Man kann nur die eigene Linie verfolgen und hoffen, dass es möglichst vielen gefällt. Aber man darf auch nicht beratungsresistent werden, denn nur weil mir persönlich beispielsweise grüne Schrift auf rotem Grund gefällt, heißt das nicht, dass das auch gut lesbar ist.“
„Viele nehmen sich auch zu viel vor“
Gerade am Anfang einer Laufbahn sei es außerdem wichtig, dran zu bleiben und überhaupt fertig zu werden, von der ersten Idee bis hin zum Marketing für das fertige Projekt – um alle Aspekte kennenzulernen. „Viele sind ja sehr negativ eingestellt, was die eigenen Sachen angeht“, sagt Mertens, „andere haben keinen langen Atem, und den braucht man nämlich für die Projekte. Besser ein halb gutes und kleines, dafür aber fertiges Projekt auf dem Markt als ein super Projekt, das nie fertig wird. Viele nehmen sich auch zu viel vor, gerade am Anfang.“