Unity – ein erster Space-Invader-Clone
Meine Schülerinnen und Schüler im Ganztagesbereich wünschen sich schon länger, Spiele in Unity zu programmieren. Bisher hatte ich aber keinerlei Erfahrung mit der Entwicklung in Unity. Durch meine wunderbare Cousine Johanna Janiszewski, die mit dem Tiny Crocodile Studios ein eigenes Studio für Game-Entwicklung betreibt, wusste ich auch bereits, dass der Einstieg in Unity nicht ganz einfach ist. Trotzdem habe ich mich nun endlich an das Thema Unity-Programmierung herangewagt.

Von der Idee zum ersten eigenen Game
Da meine Ausbildung zur Lehrerin im Seiteneinstieg erst im November startet, hatte ich diesen Monat etwas Zeit, um mich in Unity einzuarbeiten. Dafür habe ich mir den Kurs „Die komplette Unity & C# Masterclass“ von Denis Panjuta auf Udemy gekauft. Die ersten 5 Kapitel des Kurses habe ich nun schon absolviert. Diese enthalten neben ein paar Grundlagen in C# bereits die Entwicklung von zwei kleinen Spielen: Einem Space-Invaders-Clone und einem Fruit-Ninja Clone.

Nach dem ich diese ersten beiden Tutorials im Kurs nachprogrammiert habe, wollte ich die neu gewonnenen Kenntnisse noch einmal vertiefen und in der Praxis anwenden. Ich habe deshalb mit der Entwicklung eines zweiten kleinen Space-Invaders-Clone begonnen.
Das Spiel ausprobieren
Das entstandene Spiel stelle ich euch hier über mein Blog zur Verfügung. Ihr könnt es über die nachfolgende Schaltfläche in einem separaten Fenster starten.
Ihr seid im Spiel eine junge Kadettin, die sich in ihrem Raumgleiter vorbei an gefährlichen Monstern navigieren muss. Zur Steuerung des Raumgleiters können die Pfeiltasten bzw. die Tasten w,a,s,d genutzt werden. Über die Leertaste kann die Kadettin schießen und versuchen, die Monster und von den Monstern geschossene Kugeln zu eliminieren. Mit jedem erfolgreich abgeschossenem Ziel erhält die Kadettin einen Punkt und kann so versuchen, den Highscore zu erhöhen.

Der Code
Wie bereits vorab vermutet, ist die Entwicklung mit Unity keine ganz einfache Sache. Der Programmcode selbst gestaltet sich zwar relativ überschaubar, das Zusammenspiel von Unity-Editor und Visual Studio ist jedoch relativ komplex. Darüber hinaus gibt es eine Vielzahl an Elementen und Dingen die beachtet werden müssen und erstellt werden können. Dazu zählen bspw.:
- die Grafiken im 2D- oder 3D-Stil,
- die Animation der Grafiken,
- Konfigurationen, die durch public-Variablen zwischen C# und dem Unity-Editor ausgetauscht werden,
- der Vektorraum und darin stattfindende Bewegungen,
- die Physik der Elemente,
- die Einbettung von Sounds,
- und vieles mehr.
In eine leichte Anleitung lässt sich all‘ das nicht verpacken. Durch die schrittweise Heranführung im Udemy-Kurs konnte ich einen ersten Einblick in den Unity-Kosmos erhalten. Den Rest kann nur Übung und Praxis bringen. Mit meinen Kids im Ganztagesbereich werde ich die ganze Sache genauso Schritt für Schritt angehen müssen. Ich bin gespannt, wie wir uns dabei schlagen werden und ob die Motivation bei so einer komplexen Programmierumgebung erhalten bleibt.
Den Code für meinen kleinen Unity Space-Invaders-Clone habe ich zur besseren Dokumentation auf Github hochgeladen. Ihr findet ihn unter dem nachfolgenden Link.
https://github.com/crunchy-amarillo/unity-space-invaders-clone
Ausblick
Mein kleiner Unity Space-Invaders-Clone ist natürlich noch nicht fertig. Ich möchte in der nächsten Zeit noch nach und nach ein paar mehr Elemente einbauen. Dazu zählen:
- PowerUps, die eingesammelt werden können, um die Schussfrequenz der Kadettin zu erhöhen
- Leben, die eingesammelt werden können, sodass nicht direkt nach einer Kollision mit einem Monster das Spiel beendet wird
- ein Boss-Monster, was nicht mit einem Schuss zerstört werden kann
- Ausbalancing der Spiel-Dynamik

Credits
Bei der Erstellung meines Unity Space-Invaders-Clone habe ich ein paar frei verfügbare Ressourcen eingebaut und diese z.T. auch erweitert. Ich möchte mich bei den Ersteller/innen der Ressourcen dafür bedanken, dass sie diese frei zur Verfügung gestellt haben! Besonderer Dank gilt:
- Goldmetal Studio für die Pixel-Grafiken aus dem Unity Asset Store,
- Pixabay für die Sound-Effekte und
- Denis Panjuta für den umfangreichen Udemy-Kurs.
