Videospiele entwickeln ganz einfach mit Hilfe von Unity und Blender unter Zuhilfenahme von MakeHuman. Auch wenn das Wort »einfach« in Bezug auf Spieleentwicklung etwas paradox wirkt, so gibt sich der Autor von Unity-Workshop doch alle Mühe, zumindest den Einstieg so zu gestalten.

Viele hegen den Traum, ein eigenes Spiel zu entwickeln. Dank diverser Engines und verschiedensten, kostenlosen Tools ist die Hürde dazu gar nicht mehr so hoch und selbst mit Linux ohne große Umstände zu realisieren. Einen praktischen Einstieg in die Materie bietet dabei das Buch Unity-Workshop von Hans-Georg Schumann, welches beim mitp-Verlag erschienen ist.

Die Spiele-Engine Unity (nicht zu verwechseln mit Canonicals mittlerweile eingestellter Desktopoberfläche für Ubuntu) zählt ohne Zweifel zu einer der erfolgreichsten und meist genutzten ihrer Art. Besonders die einfache Handhabung, ein prall gefüllter Asset-Store und nicht zuletzt eine riesige Community tragen alle ihren Teil dazu bei.

Unity unter Linux nutzen

Seit einigen Monaten gibt es den Editor auch nativ für Linux. Zwar befindet sich dieser nach wie vor in der Beta-Phase, ist aber mit wenigen Einschränkungen ohne weiteres nutzbar. Für Ubuntu gibt es ein offizielles Paket, für alle anderen Distributionen einen separaten Installer (beide allerdings nur für 64-bit-Systeme). Grund genug also, einen Blick zu riskieren.

Vorderseite des Buches ›Unity-Workshop‹ aus dem mitp-VerlagAls Leitfaden dient uns dabei das Buch »Unity Workshop — Spiele-Welten mit Unity, MakeHuman und Blender«. Wie der Name schon erahnen lässt, nutzt das Buch neben dem Unity Editor bekannte Open-Source-Programme, welche auch für Linux erhältlich sind. Beste Voraussetzungen also.

Das 340 Seiten umfassende Buch nimmt den Leser von Anfang an an der Hand und erklärt im ersten Kapitel den grundlegenden Aufbau und diverse Funktionen des Editors. Mit wenigen Handgriffen werden bereits erste, ermutigende Ergebnisse erzielt, ohne jedoch zu überfordern. Im Gegenteil. Der Stil ist sehr ausführlich, so dass Nutzer, die bereits erste Schritte gewagt haben, unter Umständen anfangs eher die Zeilen überfliegen werden.

Auch für ganz blutige Anfänger hat der Autor vorgesorgt und gibt im Anhang Hilfestellung bei der Installation von Unity, sowie allen benötigten Programmen und bietet auch einen Crashkurs in C#, damit der unerfahrene Leser beim Erstellen der im Buch gezeigten Skripte nicht völlig den Überblick verliert.

Da sich das Buch erwartungsgemäß in erster Linie an Windows-Nutzer richtet (war ein Linux-Editor vor wenigen Monaten doch noch gar kein Thema) zeigen diese Beispiele natürlich den Weg der Installationen auf Microsofts Betriebssystem. Wer jedoch erfolgreich eine Linux-Distribution nutzt, wird auch in der Lage sein, die benötigten Programme zu installieren und kann somit die ersten drei Teile des Anhangs getrost ignorieren.

Zumindest Blender befindet sich bei den meisten gängigen Distributionen in den Paketquellen und auch MakeHuman lässt sich einfach herunterladen oder in Ubuntu durch ein zusätzliches Repository installieren. Der Unity Editor selbst ist über das offizielle Forum zu finden. Der letzte Eintrag enthält die benötigten Links zum Download.

Momentan gibt es allerdings einen Bug bei der Registrierung, weshalb man sich auf jeden Fall auch eine ältere Version herunterladen muss, mit der das Starten noch möglich war. Ist man einmal im Editor angelangt, kann man diesen wieder schließen und die aktuelle Version ausführen. Diese startet dann ganz normal.

Insgesamt lässt sich alles Gezeigte erfreulich einfach auf Linux übertragen, wenn dies nicht ohnehin automatisch geschieht, da es kaum Unterschiede gibt. Bei ein paar Kleinigkeiten muss sich der Leser noch selbst behelfen. So ist es in der Linux-Version des Unity-Editors momentan nicht möglich, Objekte im Hierarchy-Fenster umzubenennen. Dies muss nach Anwählen im Inspector geschehen. Mit der aktuellen Version lassen sich jetzt auch Objekte im Hierarchy-Fenster umbenennen, was so zuvor nicht möglich war und im Inspector vorgenommen werden musste.

Wenn man sich darauf einlässt, so findet man aber in der Regel schnell einen alternativen Weg, um ans Ziel zu kommen. Nicht zuletzt ist dies auch den vielen Schritt-für-Schritt-Anleitungen zu verdanken, die einen zu keiner Zeit im Regen stehen lassen. So ist es stets leicht, eine geeignete Alternative zu finden, sollte dies von Nöten sein.

Kapitel 2 und 3

Insgesamt lässt sich das Buch viel Zeit, so dass jeder angehende Spieleentwickler mitkommt, egal auf welchem Niveau er sich befindet. Neben den eigentlichen Aufgaben streut der Autor immer wieder kleinere Denkanstöße dazwischen, die zum Experimentieren einladen, wenn der Leser denn möchte. Man merkt dem Buch die Tätigkeit des Verfassers als Mathematik- und Informatiklehrer etwas an, was dem Werk in diesem Falle sehr zugute kommt.

Das Buch bietet einen sehr praktischen Ansatz, bei dem man mit konkreten Aufgabenstellungen an den Editor und das Entwickeln mit Unity an sich herangeführt wird. Der Leser hat ständig etwas zu tun und wird dadurch bei der Stange gehalten, um das Buch nicht wegen zu viel Theorie irgendwann genervt wegzulegen.

Ohne viel Schnickschnack bringt man so bereits in den ersten paar Minuten ein Spieler-Objekt in die Szene und lernt, wie man dieses mit wenigen Zeilen Code bewegen kann. Anfangs noch abstrakt mit Hilfe der von Unity angebotenen Formen, wird dieses Objekt bereits im zweiten Kapitel durch eine richtige Spielfigur ausgetauscht, welche mit Hilfe von MakeHuman mit wenigen Klicks erstellt und in Unity importiert sowie in Bewegung versetzt wird.

Kapitel 3 widmet sich dem freien 3D-Modellierungsprogramm Blender, welches man als Open-Source-Alternative zu Maya oder 3D Studio Max von Autodesk ansehen kann. Zudem gibt es eine Einführung in das Thema »Künstliche Intelligenz«, mit derer man die in Blender erstellte Kreatur zum Leben erweckt.

Auch wenn hier das Buch nicht mehr ganz auf dem aktuellen Stand ist, kann man trotzdem getrost nach den Vorgaben arbeiten. Wenn man sich um das Script der Kreatur kümmert und der Code eingetippt ist, bietet Unity beim Wechsel von MonoDevelop zum Editor an,bestimmte Stellen an die aktuelle Syntax anzupassen, was soweit auch problemlos funktioniert.

Kapitel 4

Das vierte Kapitel beschäftigt sich mit der Spielwelt an sich und zeigt, wie man die Umgebung erstellt und diese mit Bergen, Flüssen und Bäumen verschönert. Auch Wind wird eingesetzt und die Steuerung des Spielers um Klettern und Schwimmen erweitert, damit man die selbst geschaffene Welt auch gebührend erkunden kann.

Hier zeigte der Unity-Editor für Linux auch erste Probleme, die sich nicht ohne Weiteres beheben ließen. So funktioniert der Shaded-Wireframe-Mode zum Darstellen der Szene als Gitter über den Oberflächen nicht und man muss sich für eine der beiden Varianten entscheiden, also entweder nur das Gitternetz oder der normale Modus. Beides gleichzeitig war nicht machbar.

Zudem schloss sich der Editor beim Ausprobieren des erstellten Terrains gerne mal. Regelmäßiges Speichern wurde also spätestens zu diesem Zeitpunkt zur Pflicht. Als es darum ging, das Terrain mittels Bäumen aus dem Standard-Environment-Pack zu füllen, welche über das Assets-Menü importiert werden sollten, mussten wir uns auch selbst behelfen.

Die Standard-Pakete werden in Linux nämlich nicht mitgeliefert und müssen über den Asset-Store nachträglich installiert werden. Zu finden sind diese unter Unity Essentials → Asset Packs → Standard Assets. Nach einem Klick auf Import kann man wieder den Vorgaben des Buchs folgen und alle Einträge bis auf SpeedTree, Water und Water (Basic) unter Environment abwählen.

Auch versäumt es der Autor an einer Stelle darauf hinzuweisen, dass ein Skript bei einem Testlauf noch nicht fertig ist und zu unvorhergesehenem Verhalten führt. An anderen Stellen im Buch ist das nicht der Fall und man wird in der Regel gewarnt und sogar dazu ermutigt, nach Fehlern zu suchen. Ausgerechnet bei den ersten Tauchgängen kann man sich aber anfangs aus dem Wasser heraus bis ins Unendliche nach oben manövrieren, da die Gravitation nicht mehr zugeschaltet wird.

Zwar wird das wenige Seiten später behoben, trotzdem ist es leicht verwunderlich, dass dieser Umstand, im Gegensatz zu ähnlichen Stellen im Buch, keinerlei Erwähnung findet. Auch gibt sich der Autor damit zufrieden, dass die Schwimm-Animation erst einsetzt, wenn man die Bewegung im Wasser kurz stoppt und sich dann wieder fortbewegt. Gleiches gilt für den Wechsel wieder zurück an Land.

Hält man die Taste um nach vorne zu gehen nach Verlassen des Wassers einfach gedrückt, so kann man sich fortan schwimmend durch das Terrain bewegen. Auch wenn man im Netz genug Ansätze findet, dies zu beheben, so ist es doch schade, dass man im Buch dem Problem nicht auf den Grund geht oder die Umstände zumindest erklärt.

Kapitel 5

Das abschließende fünfte Kapitel rundet das Gesamtpaket ab und beschäftigt sich mit dem Thema Game-Design. Es geht also um grundlegende Konzepte, die Geschichte des Spiels, Inhalte und wie dies alles strukturiert und umgesetzt wird. Der Leser erstellt im Verlauf ein fertiges kleines Spiel mit Rätseleinlagen und wird mit vielen anschaulichen Erklärungen und Beispielen begleitet.

Leider haben sich in letzten Kapitel auch ein paar Fehler eingeschlichen, so dass sich manche Codezeilen in den Beispielen vom fertig abgebildeten Quellcode unterscheiden, was unter Umständen für einige Verwirrung sorgen kann. Ton und Musik ist auch kein Thema, es geht also stets recht still zu in den Projekten, wenn man sich nicht selbst etwas einfallen lässt.

Auch ist anfangs von einer Kugel die Rede, die den Wasserspiegel eines Tümpels steigen lassen soll, sobald sie dort hineingerollt wird. Bei der Umsetzung wird dies aber einfach weggelassen und auch sonst ist diese Stelle, im Gegensatz zum Rest vom Buch, sehr schwammig formuliert, so dass viel Raum für Interpretationen offen bleibt und nicht ganz klar ist, wie dieser Teil realisiert werden soll.

Zusätzlich werden auf der Website des Verlags neben einer Leseprobe weitere Daten wie Skripte und Texturen zum Download angeboten, welche für das Arbeiten mit den einzelnen Kapiteln verwendet werden können. Dies bleibt aber stets optional, wodurch dem Leser die Möglichkeit geboten wird, auch eigene Ideen einzubringen.

Da auch die Projektdateien des Autors enthalten sind, kann hier nachgeschaut werden, wie das Problem mit der Kugel und dem Tümpel gelöst wurde. Tatsächlich stellt sich heraus, dass der Spieler auf der Wasseroberfläche laufen kann, sobald er die Kugel in das Wasserloch geschoben hat. Auch wenn dies aus den Skripten klar hervorgeht, so ist es nicht intuitiv und wird auch so nirgends erwähnt — ganz zu Schweigen von dem nicht steigenden Wasserspiegel.

Trotzdem, das Buch Unity Workshop bietet einen idealen Einstieg in die Spieleentwicklung mit Unity und lässt sich ohne große Umstände auch in Linux umsetzen. Der Workshop vermittelt grundlegende Kenntnisse und Konzepte, wodurch eine solide Basis geschaffen wird, um damit gut gewappnet weiter in die Materie einzutauchen.

Durch die sehr ausführlichen Erklärungen schafft es der Autor, den Leser stets mitzunehmen und trotzdem bekommt man ständig etwas zu tun, so dass es nicht langweilig wird. Am Ende kommt gar ein fertiges kleines Spiel heraus, was Lust auf mehr macht. Alle benötigten Werkzeuge stehen kostenlos zur Verfügung, wodurch interessierte gleich loslegen können.

Der Titel ist in gedruckter Form im regulären Buchhandel erhältlich, kann neben dem E-Book aber auch auf der Website des Verlags direkt geordert werden. Der Preis liegt bei 29,99 € für die Printfassung, für die elektronische Variante (wahlweise als PDF oder EPUB) werden 25,99 € fällig. Innerhalb Deutschlands fallen für die Bestellung beim Verlag keine Versandkosten an (da der Preis über 10 € liegt).

Offizielle Buchinformationen

Informationen zum Buch (von der Website entnommen):
Unity-Workshop Buch

ISBN: 9783958453623
von Hans-Georg Schumann, 1. Auflage, 340 Seiten, Softcover 17×24 cm, 4-farbig

Spiele-Welten mit Unity, MakeHuman und Blender erstellen

  • Praxisnahe Unity-Anleitung komplett in Farbe für ein ansprechendes Quest-Spiel
  • Landschaften entwerfen und Kreaturen zum Leben erwecken mithilfe von Blender und MakeHuman
  • Alle Projektdateien auch zum Download

Mit Unity können Sie eigene Spiele entwickeln und in Verbindung mit Blender und MakeHuman in fremde Welten eintauchen. Alle Programme sind kostenlos verfügbar.
Hans-Georg Schumann beschreibt in fünf Kapiteln, wie man ohne Vorkenntnisse in Unity eine Spielwelt mit Spielfiguren entwirft. Mit MakeHuman erstellen, verfeinern und animieren Sie einen individuellen Player und mit Blender formen Sie eine Kreatur als Gegenspieler. In Unity gestalten Sie Landschaften mit Bäumen und Wasser und passen alles in Ihr Spiel ein. Schritt für Schritt erhält Ihr Player die Fähigkeit, Spiel-Aufgaben zu erfüllen, sodass Sie am Ende ein komplettes Quest-Game entwickelt haben.

TEILEN
Dennis
Seit 2004 begeisterter Linux-Anhänger, spiele ich schon viel länger Videospiele. Angefangen hat alles mit einem Amiga 500 und einem Game Boy im Jahr 1990. Ich schlage mich momentan als ausgebildeter Mediengestalter durchs Leben, studiere nebenher Digitale Medien und interessiere mich sehr für IT-Sicherheit. Warum ich noch ein Windows auf meinem Rechner habe, ist mir mittlerweile schon entfallen, da ich es seit Monaten nicht mehr gestartet habe.

HINTERLASSE EINE ANTWORT