Spiele programmieren mit Unity (eBook)

Mit Spaß 3D-Spiele selbst entwickeln
eBook Download: PDF
2020 | 2. Auflage
418 Seiten
MITP Verlags GmbH & Co. KG
978-3-7475-0171-9 (ISBN)

Lese- und Medienproben

Spiele programmieren mit Unity -  Hans-Georg Schumann
Systemvoraussetzungen
24,99 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen


  • 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



Hans-Georg Schumann war Informatik- und Mathematiklehrer an einer Gesamtschule. Er hat viele erfolgreiche Bücher in der mitp-Buchreihe »... für Kids« geschrieben.

Hans-Georg Schumann war Informatik- und Mathematiklehrer an einer Gesamtschule. Er hat viele erfolgreiche Bücher in der mitp-Buchreihe »... für Kids« geschrieben.

Cover 1
Titel 5
Impressum 6
Inhalt 7
Einleitung 13
Welche Werkzeuge benötigen wir? 14
Was bietet dieses Buch? 15
Wie arbeite ich mit diesem Buch? 15
Was brauchst du für dieses Buch? 16
Wie gut kennst du C#? 17
Hinweise für Lehrer 18
Kapitel 1: Das erste Projekt 19
Unity starten 20
Ein Objekt zum Spielen 24
Gravitation und Kollision 33
2D oder 3D? 39
Unity beenden 45
Zusammenfassung 47
Ein paar Fragen ... 48
... und eine Aufgabe 48
Kapitel 2: Script-Programmierung 49
Ein Script erstellen 49
Klassen und Methoden 56
if-Strukturen 59
Schubsen oder schieben? 63
Mal schwerelos, mal »bouncy« 66
Import und Export 70
Zusammenfassung 75
Ein paar Fragen ... 76
... und eine Aufgabe 77
Kapitel 3: Eine Figur zum Spielen 79
Ein neues Spielobjekt 80
Bilder fürs Sprite 83
Ein Script für die Figur 86
Character Controller 90
Material und Textur 95
Zusammenfassung 103
Ein paar Fragen ... 104
... und eine Aufgabe 104
Kapitel 4: Jump & Run
Steuersystem 106
Das richtige Bild 112
Eine eigene Methode 117
Laufen, Springen, Schubsen 120
Bouncy Ball 123
Trigger 125
Texturen 129
Zusammenfassung 132
Ein paar Fragen ... 133
... und ein paar Aufgaben 134
Kapitel 5: Sightseeing in 3D 135
Einfache Szene in 3D 136
Bewegte Kamera 140
Springen und Drehen 142
Player mit Kamera 146
3rd oder 1st Person? 150
Fertig-Player aus der Packung? 154
Zusammenfassung 158
Ein paar Fragen ... 159
... und ein paar Aufgaben 159
Kapitel 6: Landschaften 161
Von der Ebene zum Terrain 162
Ein Gelände gestalten 165
Rundgang und Asset-Suche 169
Landschaftspflege 176
Vegetation 180
Noch mehr Details? 185
Zusammenfassung 190
Ein paar Fragen ... 191
... aber keine Aufgabe 191
Kapitel 7: Erde, Wasser, Luft 193
Auf und ab 194
Grenzkontrollen 197
Wind ... 201
... und Wasser 204
Entschlackungskur 210
Kugel mit Rigidbody 211
Kollision mit Folgen 214
Zusammenfassung 217
Ein paar Fragen ... 218
... und eine Aufgabe 218
Kapitel 8: Bauwerke 219
Baumaterial 219
Platten legen 224
Prefab-Transport I 231
Prefab-Transport II 237
Innenansichten 239
Steigungen 243
Zusammenfassung 246
Ein paar Fragen ... 247
... und ein paar Aufgaben 247
Kapitel 9: Klettern und Schwimmen 249
Ein Kletter-Trigger 249
Der Player lernt klettern 252
Ein kleiner Schubs 255
See-Landschaft 259
Unterwasser-Atmosphäre 263
Waten, Schwimmen, Tauchen 266
Bewegungskontrolle 271
Zusammenfassung 273
Keine Fragen ... 274
... aber ein paar Aufgaben 274
Kapitel 10: Animation und Navigation 275
Ein kleines Monster 276
Animator und Keyframes 279
Das »Ding« bewegt sich 284
Kleiner Probelauf 289
Ein Navigator für die Kreatur 292
Verfolgung an, Verfolgung aus 299
Hindernislauf 302
Zusammenfassung 305
Ein paar Fragen ... 306
... und eine Aufgabe 306
Kapitel 11: Spiel mir das Lied vom Tod 307
Angriff und Verteidigung 308
Tödliche Kugeln 312
Animationen organisieren 314
Stehen – Gehen – Sterben 321
Tod des Players? 327
Die Kreatur wird zum Monster 328
Zusammenfassung 335
Ein paar Fragen ... 336
... aber nur eine Aufgabe 336
Kapitel 12: Strahlen, Partikel und Sound 337
Raycasting 337
Todesstrahlen 341
Partikelsysteme 345
Flammenwerfer 352
Schrittgeräusche 354
Noch mehr Sound? 358
Zusammenfassung 361
Ein paar Fragen ... 362
... und ein paar Aufgaben 362
Kapitel 13: Game Tuning 363
Die Kreatur rüstet auf 364
Gesundheits-Balken 366
Energiekontrolle für den Player 373
... und für die Kreatur 376
Game Over 378
Aufmarsch der Gegner 380
Play the Game 384
Zusammenfassung 390
Keine Frage und keine Aufgabe mehr 391
Anhang A: Unity installieren 393
Anhang B: Debugging 407
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:

https://unity.com/

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:

http://www.mitp.de/0170

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...

Erscheint lt. Verlag 17.11.2020
Reihe/Serie mitp für Kids
Verlagsort Frechen
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Schlagworte Blender • C# • Computerspiel • Game Engine • JavaScript • MonoDevelop • Programmieren • Spieleprgrammierung • UNITY • unity3d • Unity 5
ISBN-10 3-7475-0171-0 / 3747501710
ISBN-13 978-3-7475-0171-9 / 9783747501719
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
PDFPDF (Ohne DRM)
Größe: 39,1 MB

Digital Rights Management: ohne DRM
Dieses eBook enthält kein DRM oder Kopier­schutz. Eine Weiter­gabe an Dritte ist jedoch rechtlich nicht zulässig, weil Sie beim Kauf nur die Rechte an der persön­lichen Nutzung erwerben.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

eBook Download (2023)
Rheinwerk Computing (Verlag)
35,92
Deterministische und randomisierte Algorithmen

von Volker Turau; Christoph Weyer

eBook Download (2024)
De Gruyter (Verlag)
64,95
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
39,92