Spielentwicklung leicht gemacht- mit Unity
Mit dem Script-Baukasten und der grafischen Benutzeroberfläche von Unity wird es für den versierten Anwender leicht, eigene Spiele am PC zu entwickeln.
Welcher Computerspieler und welche Spielerin kennt nicht das Gefühl: Nach dem Abspann des letzten durchgezockten Titels macht sich so eine Leere breit. Der Release für den nächsten Wunschtitel liegt noch in weiter Ferne und der letzte “Blockbuster” war mal wieder mehr enttäuschender Mainstream, als das Spiel des Jahrhunderts. Und wer möchte nichtmal hinter die Kulissen des Spieleproduktionsprozesses schauen oder gar mal selbst ein paar Programmierzeilen schreiben?
Waren fertige Spieleengines vor ein paar Jahren noch wenig leistungsfähig oder extrem teuer und kompliziert, so schickt sich mit der Spielentwicklungssoftware “Unity” eine Firma aus San Francisco an, die Entwicklung von Computerspielen zu revolutionieren.
“Spiele sind zu kompliziert, für gute Spiele braucht man mind. 100 Leute und 2 Millionen Euro Budget.” waren lange Zeit gültige Aussagen. Jeder, der in seiner Freizeit mal versucht hat in der Programmiersprache seines Vertrauens eine eigne Engine oder gar ein ganzes Spiel zu programmieren, kennt vielleicht das Gefühl, nur in Millimeter-Schritten voran zu kommen.
Mit der zunehmenden Kommerzialisierung einer ehemals freien und sehr kreativen Medienkultur haben sich auch die Relationen und die Denkweisen verschoben. Viele kommerzielle Spiele bedienen nur noch den Mainstream und vernachlässigen viele gesellschaftskritische oder künstlerische Aspekte. Im schlimmsten Falle wird nur ein Abklatsch eines bereits bewährten Spielprinzips vom Fließband aus “produziert” oder eine vierte, fünfte Verlängerung von ehemals innovativen Titeln geklont.
Mit “Unity” kann nun jeder Spieler vom Wohnzimmer aus zum Spieleproduzenten werden. Es ist erstaunlich, wie groß der Funktionsumfang ist und wieviele Möglichkeiten man mit einem einfachen Mausklick bekommt. Das beste aber ist: Die Basisversion von Unity ist komplett kostenlos. Vergleicht man die Features mit der 1.500 Dollar teuren “Pro” Version, so kann sich die Gratisversion durchaus sehen lassen.
Features
Neben der bekannten PhysX (TM) Engine von Nvidia, gibt es dreidimensionales Audio, Multiplayer Unterstützung, Direct 3D und Open GL Grafik. In der kostenpflichtigen Version sieht die Grafik nochmal deutlich besser aus und läuft auch schneller dank der neuen Features wie Occlusion Culling, Echtzeit Schatten, Post Processing Effects und viele mehr.
Aber auch mit der Gratis-Version kann der geübte Hobby-Grafiker ganz nette Ergebnisse erzielen, ein wenig Erfahrung mit 3D Programmen wie 3D Studio Max oder Cinema 4D vorausgesetzt.
Die Programmierung der KI und des Verhaltens von Objekten und Assets untereinander wird mit einfachen Scriptsprachen wie NET, C#, Javasript oder Boo bewerkstelligt. Das Schöne daran ist, dass sich der Programmierer dabei die gewünschte Sprache auswählen kann und auch die API- Referenz in verschiedene Sprachen übersetzt wurde. Ein relativ schneller Einstieg in die Unity-API ist also möglich, allerdings sollte man den Aufwand und die benötigte Erfahrung nicht unterschätzen.
Einfacher ist es für Anfänger, sich durch die fertigen und gut erklärten Tutorials zu arbeiten. So gibt es z.B. ein komplettes, kostenloses Tutorial um ein Rennspiel oder ein Plattform-Game (Jump and Run) zu entwickeln.
Ein weiterer Vorteil an Unity ist, dass es im Netz sehr viele Ressourcen und Hilfen im Netz gibt und gerade im Englisch-sprachigen Raum ist diese Engine anscheinend weit verbreitet (siehe hierzu auch die Links).
Pro & Contra
Bei all den Vorteilen müssten nun auch ein paar Nachteile aufgezählt werden. Die Frage ist: Gibt es überhaupt welche?
Nach ca. vier Wochen Auseinandersetzung mit Unity ist mir folgendes aufgefallen: Die mitgelieferten Tutorials sind sehr gut, aber alles was darüber hinausgeht oder wenn es um die Realisierung ganz bestimmter Features geht, muss man im Netz lange suchen. Vor allem die Übermacht der englischen Informationen kommt erschwerend hinzu, es gibt zu wenige deutsche Seiten zum Thema. Ein Fachbuch wäre von Vorteil.
Auch kann man als einzelner Mensch selten alle Qualifikationen vereinen: Können die einen besser 3D Grafiken erstellen, braucht man noch einen Soundspezialisten und einen guten Programmierer. Dann muss man sich für ein fertiges Spiel noch eine Story ausdenken, evt. Dialoge vertonen und ein innovatives Spielprinzip muss nebenbei auch noch erfunden werden. Es ist eigentlich klar, dass das alleine nur sehr schwer zu realisieren ist. Um alle Fachbereiche der Spielentwicklung abzudecken, müsste man mind. 4 oder 5 Leute in einem Team haben, die alle mit genügend Ehrgeiz das gleiche Ziel verfolgen.
Um aber etwas über Spielentwicklung zu lernen und evt. kleinere Ideen schnell umzusetzen, ist Unity ideal. Durch die leichte Bedienung und die strukturierte Oberfläche führt es zu schnellen Lernerfolgen.
Man kann z.B. mit einem 3D Programm Objekte erstellen und diese dann in Unity mit wenigen Mausklicks “begehbar” machen (Charaktercontroller und Mauslook gibt es als fertige ‘Components’). Auch kann die Interaktivität und die Atmosphäre einer Szene durch Soundeffekte und ähnliches schnell aufgewertet werden. Das macht es auch für Nicht-Spieler interessant. Denkbar ist z.B. ein begehbares Modell für Architekten oder Städteplaner.
Fazit
Insgesamt macht Unity einfach Spaß.
Man versteht durch Unity viel besser, wie ein Spiel überhaupt funktioniert und man versteht dadurch, wieviel Aufwand eigentlich erforderlich ist. Computerspiele sind in ihrem Anspruch und ihrer Mehrdimensionalität bei der Erstellung das komplizierteste Medium, vor allem für die Autoren und Entwickler.
Bilder (anklicken für größere Version)
Unity Character Controller, grüne Collider-Box, Pfeile für die 3D Objekte
Straßenszene, Screenshot aus meinem ersten Shooter-Experiment
Noch ein Screenshot mit Erklärung der Unity- Features
Script-Explosionen, Partikeleffekte und zerstörbare Objekte (Rigidbodys)
……………………………………………………………………
Links zum Thema Unity
Offizielle Links und Wiki
http://unity3d.com/ Offizielle Hauptseite
http://unity3d.com/support/documentation
Die ausführliche und umfangreiche Dokumentation
http://forum.unity3d.com/ Offizielles Forum
http://en.wikipedia.org/wiki/List_of_game_engines
List of Game Engines
http://en.wikipedia.org/wiki/Unity_%28game_engine%29
Was ist Unity, Erklärung auf Wikipedia
Tutorials International/ Englisch
http://www.unifycommunity.com Tutorials und Wiki
http://www.unity3dstudent.com Sehr gute englische Seite
http://davegoosem.net/blog/category/unity Viele Tipps und Scripts
Deutsche Seiten
http://forum.4pforen.4players.de/viewtopic.php?t=94992&sid=e172cb8457a425a4ca9b23c4d4af7360
Forumsbeitrag über Unity auf 4players
http://www.unity-insider.de/
Die erste deutsche Unity-Community
http://www.der-softwareentwickler-blog.de/category/unity3d/
Deutsches Blog mit vielen Anleitungen
Erweiterungen und Module (Assets)
http://kimmonsdesign.com/node/21
Unity 3d Dialogue Tool (Creative Common)
http://ninjaportal.com/NinjaPortal/UDE.html
Unity Dialogue Engine (kostenpflichtig)
http://unity3d.com/support/resources/assets/terrain-assets.html
Terrain (Landschaftsobjekte)
http://unity3d.com/support/resources/unity-extensions/explosion-framework
Bessere Explosionen
Bücher
Bücher über Unity gibt es bis jetzt leider nur auf Englisch.
Unity Game Development Essentials, Autor: Will Goldstone, Englisch
Unity 3D Game Development by Example / Beginner’s Guide; Autor: Ryan Henson Creighton , Englisch
Beginning 3d Game Development With Unity, Autor: Sue Blackman, Englisch




Was sind dort die Voraussetzungen für den Computer? Läuft es auch auf älteren Windowsversionen?