Einführung
Die Kurse zur Entwicklung von Computerspielen werden in C# durchgeführt. Die Teilnehmer lernen die Methoden und Methodologien zur Erstellung von zweidimensionalen sowie dreidimensionalen Computerspielen. Während der Kurse werden vollständige Computerspiele entwickelt, darunter ein Plattformspiel, ein Rollenspiel (RPG) und ein Netzwerk-Rennspiel, bei dem mehrere Spieler gegeneinander antreten können. Als Game-Engine wird UNITY 3D verwendet.
Kursprogramm
1Lektion 1: C# Wiederholung
Die ersten Klassen werden der Wiederholung des Materials gewidmet. Nach einer längeren Pause ist es sinnvoll, die Grundlagen, die in den vorherigen Semestern erarbeitet wurden, noch einmal aufzufrischen.
2Lektion 2: Einführung in Unity3D. UFO-Spiel Teil I
In der zweiten Lektion wird die Unity 3D-Engine verwendet. Die Schüler werden mit der Benutzeroberfläche des Programms vertraut gemacht und lernen die grundlegenden Elemente kennen, aus denen das Spiel besteht. Sie starten ein einfaches Projekt für ein UFO-Spiel, bei dem sie ein Skript schreiben, mit dem sie das Raumschiff auf dem Spielfeld bewegen.
3Lektion 3: Einführung in Unity3D. UFO-Spiel Teil II
Die dritte Klasse ist eine Fortsetzung der vorherigen. Es werden neue Elemente eingeführt, die mit 2D-Physik zu tun haben, sodass das Raumschiff nicht vom Spielfeld entweicht, sondern auch Punkte sammeln und anzeigen kann.
4Lektion 4: Beginn der Infinite Runner-Implementierung Teil I
Jetzt beginnt das Projekt für den Rest des Semesters. Diese Lektion wird dem Game Design Document gewidmet sein, um zu zeigen, wie wichtig es ist, Spiele von Anfang an genau zu planen.
5Lektion 5: Beginn der Infinite Runner-Implementierung Teil II
In den nächsten Klassen wird die Zeit der Vorbereitung eines Prototyps des Spiels gewidmet. Die Schüler werden ihre ersten Materialien auf den Spieleobjekten platzieren. Sie werden auch ein Skript erstellen, das es dem Charakter ermöglicht, in die Luft zu springen und den sogenannten Doppelsprung auszuführen.
6Lektion 6: Welt scrollen, Punkte zählen
Es ist Zeit, das Level so vorzubereiten, dass es weitergeht oder tatsächlich bewegt wird. Das Skript, das während dieser Klassen geschrieben wird, ermöglicht ein bisschen Schummeln. Es ist die Welt, die sich in Richtung des Spielers bewegt, wodurch der Eindruck entsteht, dass der Spieler sich auf ihr bewegt. Wir beginnen auch, unsere Punkte zu zählen.
7Lektion 7: Hindernisse, zufällig generierte Weltblöcke
Was ist das für ein Spiel, in dem man nichts tut, außer zu laufen? Wir fügen Hindernisse hinzu, die wir vermeiden müssen, und die Möglichkeit, das Schwierigkeitsniveau zu steuern. Das Spiel darf schließlich nicht langweilig sein.
8Lektion 8: Beenden und Neustarten des Spiels
Im Spiel passiert es, dass etwas schief geht. Deshalb lernen die Schüler während dieser Klassen, wie man Szenen neu lädt, um das Level neu zu starten, falls etwas schief geht.
9Lektion 9: Spieleranimation und Weltgrafiken
Wir geben dem Projekt Leben. Diese Klassen werden dem Aussehen von Levels, Helden oder Fallen gewidmet. Vorbereitete Grafiken und Animationen werden hinzugefügt und implementiert.
10Lektion 10: Münzen, Plattformen und Bestwert
Geld regiert die Welt. Also werden wir Münzen ins Spiel integrieren, um Geld zu verdienen und eine Bestenliste hinzuzufügen, sodass wir mit jeder neuen Spielrunde versuchen können, unseren Rekord zu brechen. Wir fügen auch Plattformen hinzu, damit das Spiel nicht nur auf einem Level stattfindet.
11Lektion 11: Unsterblichkeit und Magnet
PowerUP... Heute wird die Unsterblichkeit programmiert. Zumindest vorübergehend. Wir bereiten die Sammlerstücke vor, deren Aufnahme während des Spiels zusätzliche Effekte für unseren Helden hat.
12Lektion 12: Erweiterte Benutzeroberfläche und Spielmenü
Endlich bauen wir eine anständige Welt. Oder besser gesagt, lassen wir sie sich selbst bauen. Mit Hilfe einiger vorbereiteter Prefabs werden unsere Diagramme zufällig generiert. Dadurch wird jedes Spiel einzigartig.
13Lektion 13: Upgrade-Shop
Wir werden zum letzten Mal an der Benutzeroberfläche und den Menüs arbeiten. Irgendwie muss das Spiel beginnen, und wir müssen wissen, wie viele Punkte wir haben. Wir fügen auch Musik hinzu, die uns im Spiel begleiten wird.
14Lektion 14: Spielsound, Spielaufbau, Unity Ads
Es ist Zeit für die letzten Feinarbeiten. Fehlerkorrekturen, Defekte und das i-Tüpfelchen. Exportieren auf den PC und Android. Die wichtigsten Themen werden besprochen, und zum Schluss exportieren wir das Spiel, um es mit anderen zu teilen.
15Lektion 15: Space Invaders
In dieser Klasse werden wir ein Space Invaders-Spiel vorbereiten, oder besser gesagt, eine grundlegende Version, in der wir uns gegen die Ankunft der Alien-Flotte verteidigen müssen.
16Lektion 16: Space Invaders. Fortsetzung
Wir erweitern unser Projekt mit einem zusätzlichen Gegner und Schilden.
17Lektion 17: Pacman
In den nächsten zwei Lektionen werden wir das klassische Retro-Spiel Pacman erstellen. Die erste Lektion wird sich auf die Grundlagen der Pacman-Bewegung, das Essen von Punkten und das Gewinnen konzentrieren.
18Lektion 18: Pacman. Fortsetzung
In der heutigen Lektion werden wir das Pacman-Projekt fertigstellen, das wir in der vorherigen Lektion begonnen haben. Die heutige Lektion wird sich auf die Erstellung der KI und das Neustarten des Spiels konzentrieren.
19Lektion 19: Game Design und Versionskontrolle
In der ersten Lektion werden wir das Gameplay und die Mechanik des Spiels festlegen. Wir werden die Unterschiede zwischen 2D- und 3D-Spielen durchgehen. Wir bereiten auch das Game Design Document vor. Die Schüler lernen, was Versionskontrolle ist, unter Verwendung von GitHub und Plastic SCM.
20Lektion 20: Spielersteuerung
Heute werden die Schüler eine Spielersteuerung unter Verwendung des internen Unity CharacterController-Komponenten erstellen. Sie werden auch ein Kameraskript erstellen, mit dem sie die Spielwelt sehen können.
21Lektion 21: Terrains, GameManager, Zeit und Pause
Die Schüler werden einige spezielle Mechaniken vorbereiten. Sie werden einen Zähler programmieren, der die verbleibende Zeit bis zum Finden des Ziels zählt. Sie werden auch eine Mechanik für das Pausieren des Spiels und das Beenden des Spiels, um zu gewinnen oder zu verlieren, erstellen.
22Lektion 22: Abholbare Objekte
Heute werden wir Abholobjekte erstellen, die bestimmte Effekte auf den Spieler haben, nachdem sie sie aufgenommen haben.
23Lektion 23: Portal Teil I
In dieser Klasse erstellen wir ein Portal, das es dem Spieler ermöglicht, schnell zwischen verschiedenen Teilen des Labyrinths zu wechseln.
24Lektion 24: Portal Teil II
Die nächsten Klassen sind eine Fortsetzung der Portale. Wir werden Skripte erstellen, die einen reibungslosen Übergang zwischen den Portalen ermöglichen, und wir werden auch einige Sicherheitsfunktionen hinzufügen, damit das Portal richtig funktioniert.
25Lektion 25: Grundlagen der 3D-Grafik
Zeit für 3D-Grafik! Wörtlich. In dieser Klasse werden die Schüler die Grundlagen von Blender 3D lernen. Sie erfahren auch, aus welchen Teilen 3D-Modelle bestehen und erstellen das erste Modell für unser Spiel.
26Lektion 26: Erstellen von Abholobjekten und Exportieren nach Unity Teil 1
Dieses Thema wird auf zwei Lektionen verteilt. In der ersten Lektion werden die Schüler mit den Grundlagen aus den vorherigen Klassen und der Hilfe des Lehrers ihre eigenen Versionen von Abholobjekten erstellen.
27Lektion 27: Erstellen von Abholobjekten und Exportieren nach Unity Teil 2
In dieser Lektion exportieren die Schüler die Objekte als .FBX-Dateien und laden sie in Unity hoch sowie erstellen Skripte dafür.
28Lektion 28: Grundlagen der Animation und Rätsel
Jetzt, wo wir Abholobjekte haben, können wir Animationen hinzufügen. Die Schüler werden ihre Modelle in Bewegung setzen. Sie werden auch einen Fallenmechanismus sowie einen Türmechanismus mit Schlüssel erstellen.
29Lektion 29: Labyrinth-Erstellung und Level-Design Teil I
In der Klasse erstellen die Schüler einen Generator, der verschiedene Labyrinthe auf Basis von Prefabs und Bildern erzeugt. Die Schüler bereiten ihre eigenen Levels vor und fügen eigene Elemente hinzu.
30Lektion 30: Labyrinth-Erstellung und Level-Design Teil II
Die Schüler werden ihre eigenen Levels vorbereiten und eigene Elemente hinzufügen.
31Lektion 31: Materialien, Post-Processing, Musik und Sounds
Wir können unser fertiges Level noch attraktiver machen. Diese Klasse wird den Materialien gewidmet, mit denen die Objekte Farbe erhalten. Danach werden Post-Processes besprochen, mit denen die Schüler den sogenannten Fluss des Spiels vollständig ändern können. Schließlich werden Musik und Sounds eingeführt.
32Lektion 32: Benutzeroberfläche und Feinarbeiten
Die letzte Lektion wird der Benutzeroberfläche des Spiels gewidmet sein. Zwei-dimensionale Grafiken werden eingeführt, um den Spieler über die verbleibende Zeit zu informieren, ob er unter dem Einfluss eines Abholobjekts steht oder ob er endlich die Ziellinie erreicht hat. Ein einfaches Hauptmenü wird ebenfalls erstellt. Zum Schluss exportieren wir unser Spiel, um es Freunden zu zeigen.
33Lektion 33: Arkanoid
Wir bereiten die Grundlagen des Arkanoid-Spiels vor. Wir programmieren die Arena, die Bewegung des Footbridges und die Bewegung des Balls. Wir bereiten auch die ersten Steine zum Zerschlagen vor.
34Lektion 34: Arkanoid. Fortsetzung
Wir setzen die Arbeit an dem Arkanoid-Spiel fort. Wir fügen die Block-Generierung und verschiedene Levels hinzu.
35Lektion 35: Wiederholung
In dieser Klasse werden die Schüler die Grundlagen von Unity wiederholen. Es wird größtenteils selbstständige Arbeit mit etwas Unterstützung durch den Lehrer sein.
36Lektion 36: Auto-Modell und Bewegung Teil 1
Während dieser Lektionen werden wir den WheelCollider kennenlernen, das erste Fahrzeug bauen und Skripte schreiben, die es uns ermöglichen, es zu bewegen.
37Lektion 37: Auto-Modell und Bewegung Teil 2
Während dieser Lektionen werden wir den WheelCollider kennenlernen, das erste Fahrzeug bauen und Skripte schreiben, die es uns ermöglichen, es zu bewegen.
38Lektion 38: Einführung in Webtechnologien - Grundlagen der Netzwerkfunktion
Eine theoretische Lektion zur Erstellung von Mehrspieler-Spielen und der Vorbereitung der Photon-Umgebung.
39Lektion 39: Checkpoints und Rundenanzahl
Die Klasse wird den Checkpoints gewidmet, die im Gebiet platziert werden. Dank dieser kann das Programm bestimmen, wie viele Runden der Spieler bereits gemacht hat.
40Lektion 40: UI
Wir bereiten die Grundlagen der Benutzeroberfläche vor. Wir fügen den Spielernamen und die Farbe, den Countdown und einen Button zum Zurücksetzen des Spiels hinzu.
41Lektion 41: Fahrverbesserungen, Spiegel und Kamerawechsel
Die Klassen werden den Korrekturen gewidmet sein, sowie dem Hinzufügen eines Spiegels zum Spiel und dem Wechsel der Kamera.
42Lektion 42: Menü und Feinarbeiten
Während der Lektion bereiten wir das Spielmenü vor, in dem wir unseren Benutzernamen und die Farbe des Autos festlegen können.
43Lektion 43: Erstellung von Mehrspieler-Elementen Teil 1
In dieser Klasse beginnen wir endlich, Mehrspieler-Elemente zu erstellen, um unser Spiel mit dem Server und anderen Spielern zu verbinden. Aufgrund der komplexen Tests benötigen wir dafür zwei Lektionen.
44Lektion 44: Erstellung von Mehrspieler-Elementen Teil 2
In dieser Klasse beginnen wir endlich, Mehrspieler-Elemente zu erstellen, um unser Spiel mit dem Server und anderen Spielern zu verbinden. Aufgrund der komplexen Tests benötigen wir dafür zwei Lektionen.
45Lektion 45: Bestenliste
In dieser Lektion bereiten wir eine Bestenliste vor und zeigen sie an.
46Lektion 46: Power-Up
In dieser Lektion erstellen wir ein Nitro-Power-Up für unsere Autos.
47Lektion 47: Terrain und eigene Arbeiten Teil 1
Wir nehmen uns die letzten beiden Klassen, um eine Strecke zum Fahren und unsere eigenen Rennen vorzubereiten. Nachdem das Terrain erstellt wurde, werden die Schüler vorgefertigte Elemente verwenden, um ihre eigenen Rennstrecken zu vervollständigen.
48Lektion 48: Terrain und eigene Arbeiten Teil 2
Wir nehmen uns die letzten beiden Klassen, um eine Strecke zum Fahren und unsere eigenen Rennen vorzubereiten. Nachdem das Terrain erstellt wurde, werden die Schüler vorgefertigte Elemente verwenden, um ihre eigenen Rennstrecken zu vervollständigen.
