Unity – Einstieg in die Spieleentwicklung

  • 4Minuten

Aufgrund der Absicht, die Lizenzbedingungen zu ändern, geriet die Unity-Engine ziemlich stark in Verruf. Das Unternehmen Unity Technologies ruderte zurück, doch es blieb ein Vertrauensverlust. Doch wenn man ehrlich ist, macht das für Hobbyentwickler kaum einen Unterschied – und viele Firmen, die Unity einsetzen, werden das auch in Zukunft tun. Da Unity – stand jetzt – weiterhin eine Personal-Version anbieten wird, die kostenlos genutzt werden kann, wird es höchste Zeit, sich damit zu befassen.

Was ist Unity?

Die Unity-Engine ist eine leistungsstarke und weit verbreitete Spielentwicklungsplattform. Sie ermöglicht Entwicklern, interaktive 2D- und 3D-Anwendungen, insbesondere Videospiele, für verschiedene Plattformen zu erstellen. Unity bietet eine benutzerfreundliche Entwicklungsumgebung und ermöglicht die plattformübergreifende Bereitstellung von Spielen auf Geräten wie PC, Konsolen, Mobilgeräten und VR-Systemen.

Obwohl es 2D und 3D unterstützt, wird es vor allem im 3D-Bereich eingesetzt. Ohnehin bin ich der Meinung, dass es für Entwickler, die ausschließlich 2D-Spiele entwickeln möchten, bessere, weil performantere Engines gibt. Einen kleinen Überblick gibt es hier.

Warum Unity?

Die meisten Tutorials von BGMM befassten sich mit GameMaker. Ursprünglich wurde es entwickelt, damit Hobbyisten einen einfachen Einstieg in die Spieleentwicklung hatten. Das trifft heute noch zu, aber das Lizenz-Modell wurde für einige Jahre zu einem Abo-Modell, was sich allerdings kürzlich geändert hat. Was noch entscheidender ist: den GameMaker kann man trotz rudimentärer 3D-Funktionen sinnvoll nur im 2D-Bereich verwenden.

Von den Möglichkeiten her ist Unity mindestens zwei Stufen drüber, aber immer noch einfach genug, damit Anfänger ohne Suizidgedanken einsteigen können. Und während GameMaker immer noch ein Nischenprodukt ist – und dies wohl immer bleiben wird – ist Unity sehr weit verbreitet – auch in der professionellen Spieleentwicklung im deutschsprachigen Raum.

Das bedeutet: Wer mit der Spieleentwicklung als Hobby beginnt, hat mit den Kenntnissen eher die Chance, reibungslos in den professionellen Bereich zu gelangen. Und selbst wenn das Studio, bei dem man sich bewirbt, nicht Unity einsetzt, dann sehr wahrscheinlich eine Entwicklungsumgebung, die ähnlich ist. Die Unreal Engine, CryEngine und auch neue Engines wie Flax sind sehr ähnlich aufgebaut.

Hinzu kommt, dass Unity als Programmiersprache C# einsetzt. Es gehört immer noch zu den beliebtesten und am meisten verbreiteten Programmiersprachen unserer Zeit. Außerdem ist C# recht einsteigerfreundlich. Das bedeutet: Wer in Unity einsteigt und sich mit C# befasst, erlangt viele Fähigkeiten, die er weit darüber hinaus gebrauchen kann.

Mit Unity lassen sich nicht nur Spiele entwickeln. Man kann damit auch beeindruckende Demos programmieren, aber auch Lernprogramme, Simulationen und vieles mehr. Während Corona nutzte ich es bspw., um 3D-Szenen für eine virtuelle Messe zu erschaffen. In gewisser Hinsicht ist Unity somit die eierlegende Wollmilchsau.

Warum sollte ich Unity nicht verwenden?

Trotz Optimismus und Lobhudelei gibt es natürlich auch Gründe, die dagegen sprechen. Wenn du z. B. nur 2D-Spiele entwickeln willst, dann suche dir besser eine andere Engine. Gleiches gilt m. M. n. auch, wenn man ausschließlich Browserspiele entwickeln möchte. Das kann Unity zwar auch, aber meiner Erfahrung nach gibt es hier – auch im 3D-Bereich – bessere Lösungen, die nur für diese Aufgabe entwickelt wurden.

Wenn du ausschließlich auf Open Source setzen willst, ist Unity ebenfalls die falsche Wahl. Hier solltest du andere Engines, etwa Godot, in Betracht ziehen.

Ähnliches gilt, wenn du ausschließlich AAA-Spiele entwickeln möchtest oder dein Spiel extrem performant sein muss. Allerdings muss man hier bereits differenzieren. Die Qualität des Spiels hängt nicht nur von der Entwicklungsumgebung ab. AAA-Spiele setzen zwar meistens eher auf Unity, CryEngine oder eine Eigenentwicklung eines großen Studios, aber das, was der Spieler aus Qualität wahrnimmt, kommt vor allem von den sogenannten „Assets“. Also in erster Linie 3D-Modelle, Texturen, Sounds und die tausend Kleinigkeiten, die ein bereits sehr gutes Spiel zu einem noch großartigerem machen.

Und was die Leistungsfähigkeit angeht: Auch wenn Du in C++ programmieren kannst, heißt es nicht, dass deine eigene Engine zwangsläufig performanter ist. Man kann in jeder Programmiersprache sehr gut, aber vor allem auch sehr schlecht programmieren. Bis man dabei nur ansatzweise an die Möglichkeiten von Unity herankommt, vergeht extrem viel Zeit, in der man sich nur mit der Technik, aber nicht mit dem eigentlichen Spiel beschäftigt hat.

Ebenfalls solltest du dir überlegen, ob du Unity einsetzen möchtest, wenn du eine ganz spezielle Art von Spielen machen möchtest. Etwa reine Point-and-Click-Adventures, wie man sie aus den 1980er und 1990er Jahren kennt. Oder gleich richtig Retro und ein Textadventure? Ja, das geht auch alles mit Unity, aber da sind spezialisierte Engines wesentlich besser. Dafür Unity einzusetzen ist in etwa, als würde man eine Atombombe einsetzen, um einen Spatzen zu töten.

Grauzonen

Natürlich gibt es auch viele Bereiche, in denen man sich nicht sicher ist. Das eigene Traumspiel soll vor allem 2D sein, aber doch hier und da 3D-Szenen enthalten? Etwa bei einem Fußballmanager, bei dem es aber auch möglich sein soll, ein 3D-Stadion zu bauen?

Ja, solche Fälle wird es immer wieder geben. Aber womöglich ist an dieser Stelle die Fragestellung bzw. Herangehensweise falsch. Wer wirklich nur dieses eine Spiel entwickeln will, von dem er immer geträumt hat, muss sich womöglich mit solchen Fragen herumschlagen: Was ist die beste Engine für meine Spielidee? Aber das ist eher selten. Die meisten Menschen möchten einfach nur Spiele (plural) entwickeln – und dafür ist Unity hervorragend geeignet. Abgesehen davon lernt man dabei extrem viele Dinge, die man generell für die Spiele-, aber auch Softwareentwicklung, gebrauchen kann.

Mein Tipp: Lege einfach los, statt dir laufend darüber Gedanken zu machen, warum du etwas nicht tun solltest!

Und jetzt?

Grundsätzlich kannst du sofort loslegen! Einfach auf die Seite, herunterladen, installieren und schon kannst du die tollsten Sachen damit machen. Damit der Einstieg leichter fällt, werde ich einen kleinen dreiteiligen Einstiegskurs schreiben, der etwas von dem abweichen wird, was man sonst so findet. Die Links findest du dann an dieser Stelle. Und ich bin mir ziemlich sicher, dass viele weitere Tutorials auf BGMM folgen werden.

Weiterführende Links

Einstieg in Unity Teil 1 – 3D und erste Szene
Einstieg in Unity Teil 2 – Der drehende Würfel
Einstieg in Unity Teil 3 – Die Macht der Programmierung
Spieleentwicklung: Ein Hobby für alle!
Erste Schritte in Pico-8
Lernkurven in Spielen
Statistiken in Spielen

Autor

Abonnieren
Benachrichtige mich bei
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x