E-Book, Deutsch, 418 Seiten
Reihe: mitp für Kids
Schumann Spiele programmieren mit Unity
2021
ISBN: 978-3-7475-0171-9
Verlag: mitp Verlags GmbH & Co.KG
Format: PDF
Kopierschutz: 1 - PDF Watermark
Mit Spaß 3D-Spiele selbst entwickeln
E-Book, Deutsch, 418 Seiten
Reihe: mitp für Kids
ISBN: 978-3-7475-0171-9
Verlag: mitp Verlags GmbH & Co.KG
Format: PDF
Kopierschutz: 1 - PDF Watermark
- 2D- und 3D-Spiele selbst entwickeln
- Landschaften und Gebäude gestalten sowie Figuren animieren
- Wichtige C#-Programmier-Elemente kennenlernen und anwenden
Unity ist eine sehr beliebte Spiele-Engine, mit der du eigene 3D-Spiele entwickeln kannst. Der erfahrene Kids-Autor Hans-Georg Schumann zeigt dir, wie du mit Unity und der Programmiersprache C# schnell zu beeindruckenden Ergebnissen kommst.
Schritt für Schritt lernst du, wie du Figuren durch die Welt wandern und auch gegen gefährliche Gegner kämpfen lässt. Du erstellst Landschaften mit Bäumen und Seen, gestaltest und animierst eigene Charaktere, und lernst ganz nebenbei das Programmieren in C#. Das Unity-Partikelsystem erzeugt tolle Effekte mit Licht und Schatten, die dem Spiel das nötige Reality-Gefühl geben. Und alles, was du zum Programmieren deiner Spiele brauchst, findest du auch zum Download.
Aus dem Inhalt:- Unity starten und ein erstes kleines Kollisionsspiel erstellen
- In die Script-Programmierung mit C# einsteigen
- Einen Charakter entwerfen und ihm Eigenschaften geben
- Ein Jump & Run-Spiel entwickeln
- Das Prinzip von 3D verstehen und die Spielfläche mit Bäumen und Wasser gestalten
- Ganze Bauwerke entstehen lassen
- Die Figur klettern, schwimmen und sogar tauchen lehren
- Eine Fantasie-Kreatur entwerfen und durch Animation lebendig werden lassen
- Strahlen, Partikel und Sound einbinden
- Künstliche Intelligenz nutzen
- Energiekontrolle und andere Features aufrüsten
- Installationshilfe und Fehlerbehebung
Zum Download: Alle Projekte aus dem Buch und die Lösungen zu den Aufgaben
Systemvoraussetzungen: Windows 10
Zielgruppe
Ab 12 Jahre, aber auch für Erwachsene, die eine wirklich einfache Einführung suchen.
Autoren/Hrsg.
Weitere Infos & Material
1;Cover;1
2;Titel;5
3;Impressum;6
4;Inhalt;7
5;Einleitung;13
5.1;Welche Werkzeuge benötigen wir?;14
5.2;Was bietet dieses Buch?;15
5.3;Wie arbeite ich mit diesem Buch?;15
5.4;Was brauchst du für dieses Buch?;16
5.5;Wie gut kennst du C#?;17
5.6;Hinweise für Lehrer;18
6;Kapitel 1: Das erste Projekt;19
6.1;Unity starten;20
6.2;Ein Objekt zum Spielen;24
6.3;Gravitation und Kollision;33
6.4;2D oder 3D?;39
6.5;Unity beenden;45
6.6;Zusammenfassung;47
6.7;Ein paar Fragen ...;48
6.8;... und eine Aufgabe;48
7;Kapitel 2: Script-Programmierung;49
7.1;Ein Script erstellen;49
7.2;Klassen und Methoden;56
7.3;if-Strukturen;59
7.4;Schubsen oder schieben?;63
7.5;Mal schwerelos, mal »bouncy«;66
7.6;Import und Export;70
7.7;Zusammenfassung;75
7.8;Ein paar Fragen ...;76
7.9;... und eine Aufgabe;77
8;Kapitel 3: Eine Figur zum Spielen;79
8.1;Ein neues Spielobjekt;80
8.2;Bilder fürs Sprite;83
8.3;Ein Script für die Figur;86
8.4;Character Controller;90
8.5;Material und Textur;95
8.6;Zusammenfassung;103
8.7;Ein paar Fragen ...;104
8.8;... und eine Aufgabe;104
9;Kapitel 4: Jump & Run;105
9.1;Steuersystem;106
9.2;Das richtige Bild;112
9.3;Eine eigene Methode;117
9.4;Laufen, Springen, Schubsen;120
9.5;Bouncy Ball;123
9.6;Trigger;125
9.7;Texturen;129
9.8;Zusammenfassung;132
9.9;Ein paar Fragen ...;133
9.10;... und ein paar Aufgaben;134
10;Kapitel 5: Sightseeing in 3D;135
10.1;Einfache Szene in 3D;136
10.2;Bewegte Kamera;140
10.3;Springen und Drehen;142
10.4;Player mit Kamera;146
10.5;3rd oder 1st Person?;150
10.6;Fertig-Player aus der Packung?;154
10.7;Zusammenfassung;158
10.8;Ein paar Fragen ...;159
10.9;... und ein paar Aufgaben;159
11;Kapitel 6: Landschaften;161
11.1;Von der Ebene zum Terrain;162
11.2;Ein Gelände gestalten;165
11.3;Rundgang und Asset-Suche;169
11.4;Landschaftspflege;176
11.5;Vegetation;180
11.6;Noch mehr Details?;185
11.7;Zusammenfassung;190
11.8;Ein paar Fragen ...;191
11.9;... aber keine Aufgabe;191
12;Kapitel 7: Erde, Wasser, Luft;193
12.1;Auf und ab;194
12.2;Grenzkontrollen;197
12.3;Wind ...;201
12.4;... und Wasser;204
12.5;Entschlackungskur;210
12.6;Kugel mit Rigidbody;211
12.7;Kollision mit Folgen;214
12.8;Zusammenfassung;217
12.9;Ein paar Fragen ...;218
12.10;... und eine Aufgabe;218
13;Kapitel 8: Bauwerke;219
13.1;Baumaterial;219
13.2;Platten legen;224
13.3;Prefab-Transport I;231
13.4;Prefab-Transport II;237
13.5;Innenansichten;239
13.6;Steigungen;243
13.7;Zusammenfassung;246
13.8;Ein paar Fragen ...;247
13.9;... und ein paar Aufgaben;247
14;Kapitel 9: Klettern und Schwimmen;249
14.1;Ein Kletter-Trigger;249
14.2;Der Player lernt klettern;252
14.3;Ein kleiner Schubs;255
14.4;See-Landschaft;259
14.5;Unterwasser-Atmosphäre;263
14.6;Waten, Schwimmen, Tauchen;266
14.7;Bewegungskontrolle;271
14.8;Zusammenfassung;273
14.9;Keine Fragen ...;274
14.10;... aber ein paar Aufgaben;274
15;Kapitel 10: Animation und Navigation;275
15.1;Ein kleines Monster;276
15.2;Animator und Keyframes;279
15.3;Das »Ding« bewegt sich;284
15.4;Kleiner Probelauf;289
15.5;Ein Navigator für die Kreatur;292
15.6;Verfolgung an, Verfolgung aus;299
15.7;Hindernislauf;302
15.8;Zusammenfassung;305
15.9;Ein paar Fragen ...;306
15.10;... und eine Aufgabe;306
16;Kapitel 11: Spiel mir das Lied vom Tod;307
16.1;Angriff und Verteidigung;308
16.2;Tödliche Kugeln;312
16.3;Animationen organisieren;314
16.4;Stehen – Gehen – Sterben;321
16.5;Tod des Players?;327
16.6;Die Kreatur wird zum Monster;328
16.7;Zusammenfassung;335
16.8;Ein paar Fragen ...;336
16.9;... aber nur eine Aufgabe;336
17;Kapitel 12: Strahlen, Partikel und Sound;337
17.1;Raycasting;337
17.2;Todesstrahlen;341
17.3;Partikelsysteme;345
17.4;Flammenwerfer;352
17.5;Schrittgeräusche;354
17.6;Noch mehr Sound?;358
17.7;Zusammenfassung;361
17.8;Ein paar Fragen ...;362
17.9;... und ein paar Aufgaben;362
18;Kapitel 13: Game Tuning;363
18.1;Die Kreatur rüstet auf;364
18.2;Gesundheits-Balken;366
18.3;Energiekontrolle für den Player;373
18.4;... und für die Kreatur;376
18.5;Game Over;378
18.6;Aufmarsch der Gegner;380
18.7;Play the Game;384
18.8;Zusammenfassung;390
18.9;Keine Frage und keine Aufgabe mehr;391
19;Anhang A: Unity installieren;393
20;Anhang B: Debugging;407
21;Stichwortverzeichnis;411
Einleitung
Eigene Fantasiewelten erschaffen, in denen man sich frei bewegen kann. Selbst gebauten Figuren begegnen. Abenteuer selbst erfinden, den Verlauf von Ereignissen und diese selbst bestimmen: Wie wäre das?
Um ein Spiel selbst zu erstellen, muss man vom Programmieren anfangs eigentlich noch gar nichts verstehen. Denn zuallererst braucht man eine Idee und dann einen Plan.
Wovon soll das Spiel handeln? Welche Geschichte soll es erzählen? Personen, Orte und Ereignisse, all das führt zu einem Plan, der umfasst, was zu diesem Spiel gehören soll. Und erst, wenn der Plan »steht«, kann die eigentliche Umsetzung in ein Programmprojekt beginnen. Dann allerdings sollte man schon möglichst gut programmieren können.
Wie du auf eine gute Idee kommst, wie du deine eigene Geschichte »strickst« und wie du einen Plan für ein Spiel aufstellst, wirst du in diesem Buch nicht erfahren. Hier bekommst du einen Kasten voller Werkzeuge, mit dem du deinen Plan in ein Spiel umsetzen kannst.
Wir wollen auch gar nicht so hoch hinaus: Ein professionelles Game wird heutzutage ja von einer ganzen Gruppe von Leuten erstellt, darunter Designer, Künstler, Techniker und nicht zuletzt natürlich Programmierer.
Trotzdem dauert die Arbeitszeit häufig mindestens Monate, wenn nicht Jahre. Die Beteiligten machen einen Vollzeitjob, es ist ihr Beruf. Hier hast du als Einzelgänger nur eine Chance, wenn deine Spiel-Idee so hervorragend und einmalig ist, dass sie andere überschattet.
Bleiben wir also auf dem harten Boden der Tatsachen und planen nicht ein gigantisches Meisterwerk, sondern kümmern uns um solide Grundlagen. Wenn du die beherrschst, hast du durchaus Voraussetzungen, auch einmal an einem professionellen Spielprojekt mitzuwirken.
Welche Werkzeuge benötigen wir?
Um Spiele im 2D- und 3D-Bereich zu erstellen, brauchen wir als Herzstück eine sogenannte Game-Engine. Sie muss mit physikalischen Gesetzen umgehen können, damit die Spielwelt mit ihren Figuren und Ereignissen möglichst echt wirkt. Und sie muss komplexe grafische Effekte beherrschen, damit das Ganze auch optisch etwas hermacht.
Das brauchst du:
-
Mit Unity (früher Unity3D) haben wir nicht nur eine vollwertige Engine, die so vielfältige Möglichkeiten bietet, dass dieses Buch allein nicht reicht, um alles zu beschreiben. Mit dem visuellen Editor lässt sich ein Spiel bequem erstellen – und das nicht nur für Windows, sondern auch für andere Plattformen, wie z.B. Android oder iOS.
Wir verwenden hier die derzeit aktuelle Unity-Version 2020 (für eventuelle Neuerungen schaust du am besten unter unity.com nach).
Die visuelle Entwicklungsumgebung, die Unity mit sich bringt, bietet schon viele Möglichkeiten, sich Elemente für ein Spiel zusammenzustellen. Damit aber alles wie gewünscht funktioniert und um die volle Leistung der Engine abzurufen, braucht man ein Programmiersystem:
-
Visual Studio bietet die Möglichkeit, die für Unity nötigen Skripts in einer passenden Programmiersprache, nämlich C#, zu erstellen. Dieses System gibt es kostenlos bei Microsoft (unter visualstudio.microsoft.com). Es kann aber auch über die Unity-Installation automatisch so eingerichtet werden, dass es aus Unity heraus einsetzbar ist.
Damit wir auch eigene Welten und eigene Akteure für unsere Spiele erstellen können, gibt es in Unity weitere leistungsstarke Hilfsmittel, wie z.B. einen Editor u.a. für Landschaften und Bäume. Viele mit anderen Programmen hergestellte Figuren und Elemente lassen sich leicht in Unity importieren und dort einsetzen.
Was bietet dieses Buch?
Richtig los geht es wie bei jedem Buch in Kapitel 1. Bist du ein erfahrener C#-Programmierer, so wird es für dich kein Problem sein, auch dort zu starten. Willst du aber dein C#-Wissen lieber noch mal überprüfen oder festigen, dann kannst du dies in einem vorgeschalteten Kapitel tun, das du zum Download auf der Homepage www.mitp.de/0170 findest.
Ansonsten erfährst du hier u.a.,
-
wie man in Unity Spiele mit Sprites programmieren kann,
-
wie man den 1st-Person und den 3rd-Person-Modus einsetzt,
-
wie man Landschaften gestaltet und einfache Gebäude baut,
-
wie man klettert, schwimmt und taucht,
-
wie man einfache Figuren erstellt und sie animiert,
-
wie man künstliche Intelligenz nutzen kann,
-
wie man Effekte erzeugt und Sound einsetzt.
Im Anhang gibt es dann noch zusätzliche Informationen, z.B. wie man Unity und Visual Studio installiert und wie man Fehler vermeidet.
Wie arbeite ich mit diesem Buch?
Um dir den Weg vom ersten 2D-Projekt bis zu einem 3D-Game mit Akteuren einfacher zu machen, gibt es einige zusätzliche Symbole, die ich dir hier gern erklären möchte:
Arbeitsschritte
-
Wenn du dieses Zeichen siehst, heißt das: Es gibt etwas zu tun. Damit kommen wir beim Programmieren Schritt für Schritt einem neuen Ziel immer näher.
Grundsätzlich lernt man besser, wenn man Objekte selbst einsetzt oder einen Programmtext selbst eintippt oder ändert. Aber nicht immer hat man große Lust dazu. Weil alle Projekte im Buch auch in einem Download-Paket verfügbar sind, findest du hinter einem Programmierschritt auch den Namen des jeweiligen Projekt-Ordners (z.B. Game1). Wenn du also bestimmte Projekte nicht selbst erstellen willst, kannst du stattdessen die dazugehörigen Dateien herunterladen (zu finden unter mitp.de/0170).
Fragen und Aufgaben
Am Ende eines Kapitels gibt es jeweils eine Reihe von Fragen und Aufgaben. Diese Übungen sind nicht immer ganz einfach, aber sie helfen dir, deine Spiele noch besser zu entwickeln. Lösungen zu den Aufgaben findest du auch im Download von der mitp-Seite (dort findest du auch die Programme zu den Aufgaben).
Du kannst sie dir alle im Editor von Windows oder auch in deinem Textverarbeitungsprogramm anschauen. Oder du lässt sie dir ausdrucken und hast sie dann schwarz auf weiß, um sie neben deinen PC zu legen.
Notfälle
Vielleicht hast du irgendetwas falsch gemacht oder etwas vergessen. Oder es wird gerade knifflig. Dann fragst du dich, was du nun tun sollst. Bei diesem Symbol findest du eine Lösungsmöglichkeit. Notfalls kannst du aber auch ganz hinten im Anhang B nachschauen, um ein paar Hinweise zur Pannenhilfe zu finden.
Wichtige Stellen im Buch
Hin und wieder findest du ein solch dickes Ausrufezeichen im Buch. Dann ist das eine Stelle, an der etwas besonders Wichtiges steht.
Wenn du ein solches »Wow« siehst, geht es um ausführlichere Informationen zu einem Thema.
Was brauchst du für dieses Buch?
Du findest das Unity-Paket als komplette Entwicklungsumgebung zu Download und Installation auf der entsprechenden Seite von Unity:
Zusätzlich gibt es dort noch eine Sammlung von Hilfsmitteln, die sogenannten Assets. Du findest dort auch eine Menge Zusatzmaterial. Während Unity dich nichts kostet, solange du nicht damit Geld verdienen willst, sind viele Zusätze nicht kostenlos.
Die Beispielprojekte in diesem Buch findest du ebenso wie die Lösungen zu den Aufgaben auf der Homepage des Verlags in der gerade aktuellen Version:
Die Programmbeispiele sind mit einer Unity-Version erstellt, die vielleicht schon nicht mehr die allerneueste ist, wenn du dieses Buch kaufst oder eine Weile besitzt. Denn Unity wird natürlich ständig weiterentwickelt. Wenn du eines der Projekte in einer neueren Unity-Version öffnest, bekommst du eine solche Meldung:
Mit einem Klick auf Confirm wird das alte Projekt für die aktuelle Unity-Version umgewandelt.
Betriebssystem
Die meisten Computer arbeiten heute mit dem Betriebssystem Windows. Am besten geeignet ist Version 10. Mit Unity lassen sich allerdings nicht nur Spiele für Windows entwickeln, sondern auch für andere Systeme wie Googles Android, Apples iOS, ja sogar Microsofts Xbox und Sonys Playstation.
Speichermedien
Auf jeden Fall benötigst du etwas wie einen USB-Stick oder eine SD-Card, auch wenn du deine Programme auf die Festplatte speichern willst. Auf einem externen Speicher sind deine Arbeiten auf jeden Fall zusätzlich sicher aufgehoben.
Gegebenenfalls bitte deine Eltern oder Lehrer um Hilfe.
Wie gut kennst du C#?
Vielleicht kennst du bereits eine andere Programmiersprache, wie z.B. JavaScript, Python oder auch Basic. Dann sollte dir der Umstieg auf C# nicht schwer fallen. Im Idealfall hast du bereits in C# programmiert und bist mit den Grundlagen vertraut.
Aber auch wenn du keine Ahnung vom Programmieren, aber unbändige Lust auf die Spiele-Programmierung mit Unity hast, kannst du einfach so in Kapitel 1 einsteigen und versuchen, mitzukommen. Programmiert wird erst ab Kapitel 2.
Hinweise für Lehrer
Dieses Buch lässt sich selbstverständlich auch für den Informatik-Unterricht verwenden. Dort setzt natürlich jeder Lehrer seine eigenen Schwerpunkte. Aber wenn es z.B. um eine Programmier-AG oder einen Informatikkurs mit Schwerpunkt Spieleprogrammierung geht, lässt sich dieses Buch in...




