Vorwort
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Willkommen zum Unity Development Cookbook, zweite Ausgabe! Echtzeit-3D- und Spieleentwicklungs-Tools haben sich in den letzten zwei Jahrzehnten rasant entwickelt, und mehr Menschen als je zuvor arbeiten an Projekten, die von riesigen "Triple A"-Spielen bis hin zu Hobby-Projekten reichen, die von einer einzelnen Person in ihrer Freizeit entwickelt werden.
Wir freuen uns unglaublich, dieses Buch aktualisieren zu können, und sind sehr stolz auf unsere Arbeit daran. Wir hoffen, dass es ein nützlicher Begleiter für deine Softwareentwicklung mit der Unity-Engine ist. Unity hat einen weiten Weg zurückgelegt, seit wir 2007 damit angefangen haben, und je mehr du damit arbeitest, desto mehr neue Ideen wirst du haben, wie du sie einsetzen kannst, warum du sie einsetzen solltest und so weiter! Das ist alles sehr aufregend. Vertrau uns, wir haben das schon erlebt.
Bei Secret Lab verwenden wir Unity, um die meisten unserer Videospiele zu entwickeln. Am bekanntesten sind wir für die Entwicklung von Kinderspielen in Australien, das BAFTA- und IGF-prämierte Night in the Woods (Finji) und das beliebte Yarn Spinner Tool. Seit wir Unity entdeckt haben, verwenden wir es ununterbrochen.
In diesem Buch haben wir eine Auswahl von Rezepten zusammengestellt, um häufige Probleme zu lösen, die uns bei der Entwicklung mit Unity immer wieder begegnet sind. Dieses Buch deckt nicht jede Kleinigkeit ab, die du über Unity wissen willst, aber es deckt hoffentlich die meisten Dinge ab, die du bei der Entwicklung von Videospielen tagtäglich machst. Die zweite Auflage des Buches enthält eine Menge neues Material, das auf den Änderungen basiert, die Unity in den Jahren seit dem letzten Buch vorgenommen hat, sowie Aktualisierungen zu allem, was sich geändert hat. Unity entwickelt sich zwar nicht unglaublich schnell, aber es ist wichtig, immer auf dem Laufenden zu bleiben.
In diesen Rezepten geht es um Dinge, von denen wir uns wünschten, wir hätten jemanden gehabt, den wir fragen konnten, als wir Unity zum ersten Mal benutzt haben. Wir hoffen sehr, dass sie dir helfen!
Es ist eine wirklich aufregende Zeit, um Unity zu nutzen. Die Welt der Echtzeit- und Spieleentwicklung wird jeden Tag größer und interessanter, und die Werkzeuge und Technologien, die wir verwenden, sind besser denn je. Geh hinaus und baue großartige Dinge!
Zielgruppe und Herangehensweise
Dieses Buch geht davon aus, dass du ein wenig von der Programmiersprache C# oder einer ähnlichen Sprache wie C++, Java, Go, Swift, Python oder anderen gängigen Sprachen verstehst, aber nichts über Unity weißt. Dieses Buch ist als Begleiter gedacht, damit du deine Spiele schneller zum Laufen bringst.
Tipp
Wenn dir unser Stil gefällt und du noch mehr Unity-Material von uns lesen möchtest, kannst du Unity von Grund auf in Mobile Game Development with Unity lernen, das ebenfalls bei den feinen Leuten von O'Reilly erhältlich ist.
Unsere Screenshots wurden mit macOS aufgenommen, aber alles, was wir hier besprechen, gilt generell für Unity unter Windows, macOS oder Linux.
Aufbau dieses Buches
Dieses Buch ist in 13 Kapitel unterteilt:
-
Kapitel 1, "Arbeiten in Unity", führt dich in die grundlegenden Konzepte ein, die du für die Verwendung von Unity kennen musst: Spielobjekte, Komponenten, Szenen und die Arbeit mit dem Unity-Editor selbst.
-
Kapitel 2, "Skripting", behandelt die Skripting-Schnittstelle von Unity, d.h. die Art und Weise, wie du den eigentlichen Code schreibst, der definiert, wie dein Projekt funktioniert. Nachdem wir die Grundlagen gelegt haben, werden wir uns mit einigen praktischen Beispielen beschäftigen, z. B. wie man ein Speicher- und Ladesystem schreibt, wie man effizient mit Objekten arbeitet und wie man seine Daten so speichert, dass sowohl dein Code als auch Unity problemlos damit arbeiten können.
-
In Kapitel 3, "Eingabe", lernst du, wie du Eingaben von deinem Benutzer in Form von Tastatureingaben, der Maus und von Gamepads erhältst. Außerdem besprechen wir, wie du Spielobjekte einrichtest, die auf Eingabeereignisse reagieren, z. B. wenn der Spieler sie anklickt.
-
Kapitel 4, "Mathematik", behandelt die Grundlagen einiger mathematischer Konzepte, die bei der Entwicklung von Spielen nützlich sind, wie Vektoren, Matrizen und Quaternionen. Wir sehen uns auch einige praktische Anwendungen dieser Konzepte an, z. B. die Erkennung, ob sich ein Objekt vor dem Spieler befindet oder nicht.
-
Kapitel 5, "2D-Grafik", behandelt die 2D-Grafik- und Physiksysteme, die in Unity eingebaut sind. Du lernst, wie man Sprites anzeigt, sie sortiert und sie aneinander prallen lässt.
-
Kapitel 6, "3D-Grafik", behandelt das Material- und Shading-System von Unity: wie Materialien und Shader funktionieren, wie du einen Shader in Unity erstellst und wie du die besten Ergebnisse in deinen Szenen erzielst.
-
In Kapitel 7, "3D-Physik und Charaktersteuerung", erfährst du, wie du das 3D-Physiksystem von Unity dazu bringst, das zu tun, was du brauchst, um gängige Gameplay-Aufgaben zu unterstützen, wie z.B. das Aufheben und Werfen von Objekten oder das Erstellen einer sich bewegenden Plattform, auf der der Spieler reiten kann.
-
Kapitel 8, "Animation und Bewegung", führt in das Animationssystem von Unity ein und behandelt Themen wie das Einrichten eines Charakters zum Überblenden zwischen verschiedenen Animationszuständen und die Integration von Spielerbewegungen in die Charakteranimation. Außerdem stellen wir das Kamerasystem in Unity vor und besprechen, wie man Kameras einrichtet, die sich bewegen, um Zielen zu folgen.
-
In Kapitel 9, "Logik und Gameplay", geht es um die Gestaltung des Gameplays, mit dem die Spieler interagieren. Hier gibt es eine ganze Reihe gängiger Gameplay-Aufgaben, z. B. die Verwaltung des Status einer Aufgabe, die du dem Spieler gestellt hast, die Überwachung, ob ein Rennwagen eine zu große Abkürzung nimmt, und die Verwaltung des Schadens, der zwischen den Objekten in deinem Spiel verursacht wird.
-
In Kapitel 10, "Verhalten, Simulation und KI", lernst du, wie du deinen Charakteren Köpfchen verleihst, z. B. die Fähigkeit, zu erkennen, wann der Spieler gesehen werden kann, die Fähigkeit, in einem Raum zu navigieren und Hindernissen auszuweichen, und die Fähigkeit, einen Ort zu finden, an dem sie nicht gesehen werden können. Das Kapitel befasst sich auch kurz mit der Verwendung von Unity für Simulationen und mit Techniken des maschinellen Lernens für echte KI.
-
In Kapitel 11, "Sound und Musik", werden die Audiosysteme in Unity vorgestellt. Wir beschäftigen uns mit den Grundlagen des Abspielens von Sounds und gehen dann zu fortgeschritteneren Funktionen über, wie z. B. dem Routing von Audio an mehrere Gruppen und dem automatischen Ausblenden der Musik, wenn ein Charakter spricht.
-
In Kapitel 12, "Benutzeroberfläche", geht es um die Werkzeuge, mit denen du eine Benutzeroberfläche erstellen kannst, die deine Spieler/innen betrachten und mit der sie interagieren können. Dieses Kapitel enthält auch einen Abschnitt darüber, wie du deine eigenen Werkzeuge in Unity erstellen kannst, indem du den Editor erweiterst.
-
In Kapitel 13, "Dateien, Netzwerke und Screenshots", unserem letzten Kapitel, geht es um Netzwerke, das Abrufen von Daten aus dem Internet und das Speichern von Screenshots aus dem Code.
In diesem Buch verwendete Konventionen
In diesem Buch werden die folgenden typografischen Konventionen verwendet:
- Kursiv
-
Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.
Constant width
-
Wird für Programmlistings sowie innerhalb von Absätzen verwendet, um auf Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hinzuweisen.
Constant width bold
-
Zeigt Befehle oder anderen Text an, der vom Benutzer wortwörtlich eingetippt werden sollte.
Tipp
Dieses Element steht für einen Tipp oder eine Anregung.
Hinweis
Dieses Element steht für einen allgemeinen Hinweis.
Warnung
Dieses Element weist auf eine Warnung oder einen Warnhinweis hin.
Code-Beispiele verwenden
Wenn du unseren gesamten Code für die Rezepte in diesem Buch herunterladen möchtest, besuche das GitHub-Repository des Buches. Wir haben auch eine eigene Webseite für dieses Buch, auf der wir den Quellcode sowie andere Downloads und Ressourcen bereitstellen.
Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Wenn du eine CD-ROM mit Beispielen aus den O'Reilly-Büchern verkaufst oder verteilst, ist eine Genehmigung erforderlich. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eine Erlaubnis erforderlich.
Wir schätzen die Namensnennung, verlangen sie aber nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel:"Unity Development Cookbook by Paris Buttfield-Addison, Jon Manning, and Tim Nugent (O'Reilly). Copyright 2023 Secret Lab Pty. Ltd, 978-1-098-11371-1."
Wenn du der Meinung bist, dass die Verwendung von Code-Beispielen nicht unter die Fair-Use-Regelung oder die oben genannte Erlaubnis fällt, kannst du uns gerne unter permissions@oreilly.com kontaktieren .
O'Reilly Online Learning
Hinweis
Seit mehr als 40 Jahren bietet O'Reilly Media Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.
Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen erhältst du unter https://oreilly.com.
Wie du uns kontaktierst
Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Nord
- Sebastopol, CA 95472
- 800-889-8969 (in den Vereinigten Staaten oder Kanada)
- 707-829-7019 (international oder lokal)
- 707-829-0104 (Fax)
- support@oreilly.com
- https://www.oreilly.com/about/contact.html
Wir haben eine Webseite für dieses Buch, auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter https://oreil.ly/unity-dev-cookbook aufrufen .
Neuigkeiten und Informationen über unsere Bücher und Kurse findest du unter https://oreilly.com.
Finde uns auf LinkedIn: https://linkedin.com/company/oreilly-media
Folge uns auf Twitter: https://twitter.com/oreillymedia
Schau uns auf YouTube: https://youtube.com/oreillymedia
Danksagungen
Jon dankt seiner Mutter, seinem Vater und dem Rest seiner verrückten Großfamilie für ihre großartige Unterstützung.
Paris dankt seiner wunderbaren Mutter, ohne die er eigentlich gar nichts machen würde, schon gar nicht mit Begeisterung, und seiner wunderbaren Frau Mars. Ohne euch beide könnte er das nicht tun.
Tim bedankt sich bei seinen Eltern und seiner Familie dafür, dass sie seine eher lustlose Einstellung zum Leben ertragen haben.
Wir alle möchten uns bei unserer Freundin Rachel Roumeliotis bedanken, deren Fähigkeiten und Ratschläge für unser Schreiben in den letzten zehn Jahren von unschätzbarem Wert waren.
Vielen Dank an unsere Lektorin für dieses Buch, Michele Cronin. Wir haben die Zusammenarbeit mit dir so sehr genossen und können es kaum erwarten, ein neues Buch zu beginnen. Ein großes Dankeschön geht auch an Jeff Bleiel, unseren Lektor für die erste Ausgabe dieses Buches. Du warst ruhig, klar, enthusiastisch und es war wunderbar, mit dir zu arbeiten. Wir würden gerne auch in Zukunft mit dir an weiteren Büchern arbeiten!
Auch die Mitarbeiter von O'Reilly Media, mit denen wir während des Schreibens des Buches zu tun hatten, waren absolute Gurus auf ihrem Gebiet. O'Reilly Media hat eine riesige Auswahl an unglaublich talentierten Mitarbeitern, die bei ihnen unter Vertrag stehen und sie generell umgeben. Es ist wirklich erschreckend, wie gut sie ihren Job machen.
Ein riesiges Dankeschön an Tony Gray und das Apple University Consortium (AUC) für den gewaltigen Schub, den sie uns und den anderen auf dieser Seite aufgeführten Unternehmen gegeben haben. Ohne sie würden wir dieses Buch nicht schreiben. Und jetzt schreibst du auch noch Bücher, Tony - das tut mir leid!
Ein Dankeschön geht auch an Neal Goldstein, der die volle Anerkennung und/oder die Schuld dafür verdient, dass wir uns auf das Schreiben von Büchern eingelassen haben.
Wir sind dankbar für die Unterstützung der Trottel im MacLab (die wissen, wer sie sind und weiterhin auf Admiral Dolphins unvermeidliche Apotheose warten) sowie für die Unterstützung von Professor Christopher Lueg, Associate Professor Leonie Ellis und den derzeitigen und ehemaligen Mitarbeitern der University of Tasmania, die uns ertragen haben.
Danke auch an Dave J. und sein Team, die den Kaffee serviert haben. Wenn du jemals nach Hobart, Tasmanien, Australien kommst, solltest du unbedingt einen Kaffee im Yellow Bernard trinken. Er ist der beste.
Danke auch an unsere technischen Prüfer für ihre Gründlichkeit und Professionalität. Die Bewertungen waren sehr hilfreich.
Zum Schluss: Vielen Dank, dass du unser Buch gekauft hast - wir wissen es zu schätzen! Und wenn du ein Feedback hast, lass es uns bitte wissen. Du kannst uns eine E-Mail an lab@secretlab.com.au schicken und uns auf Twitter unter @thesecretlab finden.
Get Unity Development Cookbook, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.