Unity - die geniale Plattform steckt hinter großen Games wie Among Us und Pokémon Go und wird in der Indie-Szene geliebt. Egal, ob du gerade einsteigst oder schon eine Karriere in der Games-Branche im Blick hast: Dieses Handbuch ist der perfekte Begleiter, wenn du die sagenhafte Engine meistern willst. Von den Grundkonzepten über Prefabs und Scripte bis zum komplexen 3D-Spiel mit coolen Mechaniken wirst du nach und nach zum Profi.
Dieses Handbuch ist einstiegsfreundlich und umfassend zugleich. Max Schlosser zeigt dir von der Installation an, wie es geht, hält Praxisbeispiele bereit und hört auch bei anspruchsvollen Themen nicht auf, alles genau zu erklären.
Du programmierst dabei nicht einfach Fertiges nach, sondern baust dir ein solides Repertoire auf, inklusive der Konzepte, Scripting mit C# und der Logik hinter den Effekten. Trainiere deine Skills und mach aus deinen besten Ideen spielbare Games!
Aus dem Inhalt:
Materialien zum Buch ... 25
Vorwort ... 27
1. Einführung ... 29
1.1 ... Das Problem vieler Einsteiger ... 29
1.2 ... Wichtige Ansätze des Buches ... 30
1.3 ... Lernen mit dem Buch ... 32
1.4 ... Vorstellung der Kapitel ... 35
2. Die Unity-Engine ... 39
2.1 ... Was ist eigentlich Unity? ... 39
2.2 ... Installation ... 42
2.3 ... Erstellung des ersten Unity-Projekts ... 55
2.4 ... Mit den Downloadmaterialien zum Buch arbeiten ... 58
3. Grundlegende Konzepte in der Engine ... 61
3.1 ... Der erste Überblick über Unity ... 61
3.2 ... Game Objects und Components ... 74
3.3 ... Orientierung in der Scene View ... 95
3.4 ... Parenting ... 102
3.5 ... Musterlösungen für die Übungen ... 107
4. Das erste Script ... 109
4.1 ... Scripts und die Sprache C# ... 110
4.2 ... Das erste Script erstellen ... 110
4.3 ... Aufbau eines neu erstellten Scripts ... 115
4.4 ... Das erste Script zum Leben erwecken ... 120
4.5 ... Musterlösungen für die Übungen ... 127
5. Grundlegende Konzepte der Sprache C# ... 129
5.1 ... Einfache Methoden ... 130
5.2 ... Datentypen und Variablen ... 136
5.3 ... Datentypen für Zahlen und Textzeichen ... 152
5.4 ... Methoden mit Rückgabewerten und Parametern ... 167
5.5 ... Boolesche Logik ... 179
5.6 ... if-Abfragen ... 188
5.7 ... Arrays ... 201
5.8 ... Schleifen ... 209
5.9 ... Enumerationstypen ... 219
5.10 ... switch-Anweisung ... 223
5.11 ... Praktische Hilfsmittel für Zahlen und Text ... 227
5.12 ... Umgang mit Fehlern ... 231
5.13 ... Musterlösungen für die Übungen ... 243
6. Scripting in Unity ... 251
6.1 ... Über Scripts die Transform-Component verändern ... 251
6.2 ... Anwendungsbeispiel: Einen Spielcharakter steuern ... 266
6.3 ... Interaktion zwischen mehreren Scripts ... 282
6.4 ... Game Objects und weitere nützliche Funktionen ... 294
6.5 ... Weitere Kenntnisse zu Scenes ... 304
6.6 ... Musterlösungen für die Übungen ... 311
7. Übungskomplex 1 ... 315
7.1 ... Aufgaben ... 315
7.2 ... Tipps ... 317
7.3 ... Lösungen ... 318
8. Physik ... 323
8.1 ... Grundlagen physikalischer Simulationen ... 323
8.2 ... Physik und Scripting ... 335
8.3 ... Raycasting ... 349
8.4 ... Musterlösungen für die Übungen ... 357
9. Fortgeschrittene Scripting-Themen ... 361
9.1 ... Coroutines ... 361
9.2 ... PlayerPrefs ... 373
9.3 ... Attribute ... 375
9.4 ... Scriptable Objects ... 383
9.5 ... Musterlösungen für die Übungen ... 389
10. Prefabs ... 395
10.1 ... Prefabs erstellen ... 398
10.2 ... Prefabs über Code instanziieren ... 407
10.3 ... Musterlösungen für die Übungen ... 414
11. Übungskomplex 2 ... 417
11.1 ... Aufgaben ... 417
11.2 ... Tipps ... 419
11.3 ... Lösungen ... 421
12. Objektorientierte Programmierung ... 435
12.1 ... Grundlagen der objektorientierten Programmierung ... 435
12.2 ... Referenz- und Wertetypen ... 439
12.3 ... Der Konstruktor ... 454
12.4 ... Das Schlüsselwort »static« ... 460
12.5 ... Properties ... 466
12.6 ... Vererbung ... 474
12.7 ... Die Basisklasse »object« und ihre Möglichkeiten ... 491
12.8 ... Abstraktionen ... 497
12.9 ... Musterlösungen für die Übungen ... 513
13. 2D-Inhalte ... 519
13.1 ... Projekte mit dem 2D-Template erstellen ... 519
13.2 ... Sprites ... 522
13.3 ... 2D-Physik ... 542
13.4 ... Tilemaps ... 547
13.5 ... Musterlösungen für die Übungen ... 556
14. User Interfaces ... 561
14.1 ... Grundlagen zu UI in Unity ... 561
14.2 ... Grundlegende Anordnung von UI-Elementen ... 567
14.3 ... UI-Components ... 585
14.4 ... UI-Layouts zusammensetzen ... 619
14.5 ... Musterlösungen für die Übungen ... 637
15. Visualisierung ... 647
15.1 ... Einstellungen im Projekt ... 647
15.2 ... Licht ... 650
15.3 ... Arbeit mit 3D-Assets ... 661
15.4 ... Partikelsysteme (Shuriken) ... 673
15.5 ... Terrains ... 686
15.6 ... Bauen des Spiels ... 698
16. Animation ... 703
16.1 ... Beispiel: Einführung in das Animationssystem ... 703
16.2 ... Details -- Animation Clips ... 713
16.3 ... Details -- Animator Controller ... 733
16.4 ... Musterlösungen für die Übungen ... 766
17. Sound ... 771
17.1 ... Grundlagen von Sound ... 771
17.2 ... Sounds und Scripting ... 778
17.3 ... Anpassung von Sounds ... 785
17.4 ... Mikrofoneingaben ... 794
17.5 ... Musterlösung für die Übungen ... 796
18. Navigation ... 799
18.1 ... Einführung in das Navigationssystem ... 799
18.2 ... Weitere NavMesh-Components ... 811
18.3 ... Musterlösungen für die Übungen ... 817
19. Fortgeschrittene Konzepte der Sprache C# ... 819
19.1 ... Collections ... 819
19.2 ... Datenklassen und ihre Möglichkeiten ... 827
19.3 ... Generics ... 833
19.4 ... Delegates ... 840
19.5 ... Events ... 852
19.6 ... LINQ ... 860
19.7 ... Speicherung von Daten mit JSON ... 867
19.8 ... Musterlösungen für die Übungen ... 879
20. Übungskomplex 3 ... 883
20.1 ... Aufgaben ... 883
20.2 ... Tipps ... 886
20.3 ... Lösungen ... 888
21. Übungskomplex 4 ... 915
21.1 ... Aufgaben ... 916
21.2 ... Tipps ... 921
22. Ausblick ... 923
Index ... 925