Einstieg in Unity (eBook)
476 Seiten
Rheinwerk Computing (Verlag)
978-3-8362-9266-5 (ISBN)
Nutzen Sie die geniale Game Engine Unity, um eigene Spiele zu entwickeln! Erfolgsautor Thomas Theis zeigt Ihnen Schritt für Schritt, wie es geht - von der ersten Scene bis zum komplexen Multiplayer-Spiel. Mit dem integrierten C#-Kurs lernen Sie ohne Vorkenntnisse und ohne externe Software alle Objekte und Befehle direkt so kennen, wie Sie in Unity-Skripten aussehen. Unity bietet eine Fülle von Techniken und Effekten, die Sie nur einzubinden brauchen. Ob es um Zusammenstöße, Flugkurven, Explosionen oder die Kameraperspektive geht: Lernen Sie erst mit 2D- und dann mit 3D-Spielen, die mächtigen Werkzeuge zu nutzen und Ihre eigenen Ideen umzusetzen. Mit 18 vollständigen Spieleprojekten aus vielen Genres.
Aus dem Inhalt:
- Unity installieren
- Projekte, Scenes und Assets verwalten
- Flummi oder Stahlkugel? Objekteigenschaften festlegen
- Kräfte und Drehmomente nutzen
- Skripte schreiben und gut strukturieren
- Collider und Trigger einsetzen
- Sound und Animation hinzufügen
- Materialien gestalten und Texturen verwenden
- Mit Kameras und Perspektiven umgehen
- Jump 'n Run, Breakout, Multiplayer, Shooter, Geschicklichkeitsspiel, Gedächtnistraining, Rennen, Adventure u. v. m.
Die Fachpresse zur Vorauflage:
cc13.com: »Der Autor liefert, was er verspricht. Der Leser bekommt erste Erfahrungen mit C# und Unity an die Hand, inkl. Erfolgserlebnissen mit guten Beispiel-Games.«
Thomas Theis ist Dipl.-Ing. für Technische Informatik und arbeitet als Berater und Trainer. Seit vielen Jahren gibt er als EDV-Dozent Kurse in verschiedenen Programmiersprachen. Er ist Autor vieler erfolgreicher Fachbücher.
3.2 Unsere ersten Unity-Elemente
Betrachten wir die einzelnen Elemente des fertigen Spiels im Unity Editor. Dabei machen wir uns bereits mit einigen Begriffen vertraut, die wir später zur Entwicklung benötigen.
Starten Sie dazu den Unity Hub, wechseln Sie auf die Seite Projects, und wählen Sie den Eintrag Add project from disk in der Liste Open aus. Es erscheint ein Dialogfeld, in dem Sie das Projektverzeichnis TomsJumpAndRun auswählen. Betätigen Sie die Schaltfläche Add project. Das Projekt erscheint in der Liste der Projekte.
Öffnen Sie das Projekt, wie es in Abschnitt 1.8, »Upgrade eines Unity-Projekts«, beschrieben wird. Wählen Sie also zunächst die gewünschte Unity-Version aus, und klicken Sie anschließend auf die gesamte Zeile mit dem Projekt.
Es öffnet sich der Unity Editor mit dem ausgewählten Projekt. Die Scene View zeigt das Spielfeld inklusive seines weißen Rahmens. Sollte das Spielfeld nicht vollständig zu sehen sein, sollten Sie das Layout des Unity Editors und die Ansicht in der Scene View durch Größenänderung und Verschiebung noch anpassen (siehe Abschnitt 2.9).
3.2.1 Assets
Schauen wir uns zunächst die Assets für das Projekt an. Sie sind zur besseren Übersicht in Verzeichnissen gruppiert.
Nachdem wir in der Project View das Hauptverzeichnis Assets markiert haben, sehen wir die drei Unterverzeichnisse Scenes, Scripts und Sprites (siehe Abbildung 3.2).
Abbildung 3.2 Assets, Hauptverzeichnis
Nach der Markierung des Unterverzeichnisses Scenes in der Project View sehen wir wie im ersten Projekt die einzige Szene des Spiels mit dem Namen SampleScene.
Nach der Markierung des Unterverzeichnisses Scripts sehen wir zwei Assets des Typs C#-Script. Sie sind erkennbar an den Symbolen für die Script-Dateien Gefahren.cs und Spieler.cs (siehe Abbildung 3.3). Über die Symbole können wir die Programme erreichen, die in der Programmiersprache C# geschrieben sind:
-
In der Script-Datei Spieler.cs findet sich die Klasse Spieler, in der die Eigenschaften und das Verhalten des Affen festgelegt werden. Außerdem werden von hier aus die meisten Abläufe gesteuert, da es sich bei dem Affen um das wichtigste Objekt des Spiels handelt. Das umfasst z. B. den Start und das Ende des Spiels, die Zeitmessung, das Erfassen von Punkten und Leben, die verschiedenen Anzeigen und einiges mehr.
-
In der Klasse Gefahren in der Script-Datei Gefahren.cs werden die gleichartigen Eigenschaften für alle sechs Tiger festgelegt.
Abbildung 3.3 Script-Assets
Nach der Markierung des Unterverzeichnisses Sprites sehen wir einige Assets des Typs Sprite. Sie sind erkennbar an den Symbolen für die fünf Bilddateien Affe.png, Banane.png, Dschungel.png, Tiger.png und Weiss.png (siehe Abbildung 3.4).
Abbildung 3.4 Sprite-Assets
Die Assets werden für die verschiedenen Spielobjekte verwendet: Dschungel für den Hintergrund, Weiss für die Begrenzung und die Plattformen sowie Affe, Banane und Tiger für die Aktionen im Spiel.
3.2.2 Spielobjekte
Wir untersuchen die verschiedenen Spielobjekte in der Hierarchy View (siehe Abbildung 3.5). Dabei markieren wir die angesprochenen Elemente der Reihe nach, damit wir sie jeweils anhand ihrer Markierung in der Scene View identifizieren können und die wichtigsten Eigenschaften und ihre Werte in der Inspector View betrachten können.
Abbildung 3.5 Spielobjekte in der »Hierarchy View«
Das Spielobjekt Main Camera in der Mitte des Spielfelds haben Sie bereits in Abschnitt 2.3 kennengelernt. Das Spielobjekt Hintergrund wird mithilfe des Sprite-Assets Dschungel erstellt.
Das Spielobjekt Spieler basiert auf dem Sprite-Asset Affe und hat mehrere wichtige Komponenten (siehe Abbildung 3.6):
-
In der Transform-Komponente sehen Sie die Position und die Größe.
-
Die Komponente Rigidbody 2D sorgt dafür, dass sich der Affe so ähnlich wie ein Objekt in der realen Welt verhält, das den Gesetzen der Physik unterliegt. Das bewirkt im vorliegenden Fall, dass die Schwerkraft den Affen nach unten zieht und Kollisionen mit anderen Spielobjekten bemerkt werden können.
-
Die Komponente Box Collider 2D bestimmt die Form des Kollisionsobjekts. Oft handelt es sich dabei um ein Rechteck, das die Grafik eng umgibt. Zudem sorgt dieser Collider dafür, dass der Affe keine der Begrenzungen oder Plattformen durchdringen kann. Er fällt also z. B. nicht einfach aufgrund der Schwerkraft durch den Boden.
-
In der Komponente Spieler (Script) ist dem Spielobjekt das Script-Asset Spieler zugeordnet. Damit wird festgelegt, dass sich der Affe so verhält, wie es in dem C#-Script in der Datei Spieler.cs vorgegeben wird.
Ein Box Collider 2D ist rechteckig, daher ist er für alle Spielobjekte in diesem Projekt geeignet. Ganz unten sehen Sie die Schaltfläche Add Component, mit der Sie Komponenten zu einem Spielobjekt hinzufügen können.
Abbildung 3.6 Spielobjekt »Spieler«, Komponenten
Das Spielobjekt Gewinn basiert auf dem Sprite-Asset Banane. In Abbildung 3.7 erkennen Sie die Größe. Außerdem sehen Sie die erste Position der Bananen nach dem Start des Spiels. Eine Kollision mit dem Affen muss bemerkt werden, damit es Punkte gibt. Daher hat auch dieses Spielobjekt eine Komponente Box Collider 2D.
Oben links in Abbildung 3.7 sehen Sie, dass das Spielobjekt den Tag Gewinn besitzt. Ein Tag (engl. für Etikett, Schildchen) ist eine Marke, die Sie einem Spielobjekt zuordnen können. Mehrere Spielobjekte können dasselbe Tag haben. So können Sie Spielobjekte zu logischen Gruppen zusammenfassen und mithilfe von C#-Code auf diese Spielobjekte gemeinsam zugreifen.
Abbildung 3.7 Spielobjekt »Gewinn«, Komponenten
Das Spielobjekt Raum in Abbildung 3.8 dient lediglich als Verzeichnis für die untergeordneten Spielobjekte (siehe auch Abschnitt 2.6, »Ändern der Hierarchie«). Diese bilden die Begrenzung des Spielfelds und die Plattformen. Alle basieren auf dem Sprite-Asset Weiss. Markieren Sie einmal nacheinander die weißen Spielobjekte in der Hierarchy View, um ihre Lage in der Scene View und ihre Komponenten in der Inspector View zu betrachten. Ich empfehle Ihnen, in Ihren Projekten ähnlich selbsterklärende Namen zu verwenden.
Abbildung 3.8 Begrenzung des Spielfelds und Plattformen
Alle weißen Spielobjekte besitzen einen Box Collider 2D. Auf diese Weise wird z. B. verhindert, dass der Affe aufgrund der Schwerkraft durch den Boden oder eine der Plattformen fallen kann. So kann er auch das Spielfeld nicht durch eine der Wände verlassen.
Das Spielobjekt Gefahren in Abbildung 3.9 dient als Verzeichnis für die insgesamt sechs einzelnen Gefahren, also die sechs Tiger. Alle basieren auf dem Sprite-Asset Tiger. In der Inspector View sehen Sie, dass alle das Tag Gefahr besitzen. Wie das Spielobjekt Gewinn besitzen auch diese Spielobjekte einen Box Collider 2D, damit eine Kollision mit dem Affen bemerkt werden kann.
Abbildung 3.9 »Gefahren«
In der Komponente Gefahren (Script) ist allen sechs Spielobjekten das Script-Asset Gefahren zugeordnet. Damit wird festgelegt, dass sie sich so verhalten, wie es in dem gleichnamigen C#-Script vorgegeben wird.
Die Elemente der Benutzeroberfläche sind für den Benutzer zu sehen, befinden sich aber nicht auf dem Spielfeld und können z. B. nicht mit den Spielobjekten kollidieren. Das Spielobjekt UI in Abbildung 3.10 dient als...
Erscheint lt. Verlag | 5.4.2023 |
---|---|
Sprache | deutsch |
Themenwelt | Mathematik / Informatik ► Informatik ► Grafik / Design |
Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge | |
ISBN-10 | 3-8362-9266-1 / 3836292661 |
ISBN-13 | 978-3-8362-9266-5 / 9783836292665 |
Haben Sie eine Frage zum Produkt? |
Größe: 9,5 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software 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 eine kostenlose App.
Geräteliste und zusätzliche Hinweise
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.
aus dem Bereich