Nicht aus der Schweiz? Besuchen Sie lehmanns.de
Unity Game Optimization - Dr. Davide Aversa, Chris Dickinson

Unity Game Optimization

Enhance and extend the performance of all aspects of your Unity games, 3rd Edition
Buch | Softcover
404 Seiten
2019 | 3rd Revised edition
Packt Publishing Limited (Verlag)
978-1-83855-651-8 (ISBN)
CHF 41,85 inkl. MwSt
Unity is a powerful game engine. However, producing a performant product requires additional knowledge. This book is a comprehensive introduction to optimization techniques and best practices. By the end of the book you will be able to apply all the major optimization techniques and be able to produce faster and high performant games.
Get up to speed with a series of performance-enhancing coding techniques and methods that will help you improve the performance of your Unity applications

Key Features

Optimize graphically intensive games using the latest features of Unity such as Entity Component System (ECS) and the Burst compiler
Explore techniques for solving performance issues with your VR projects
Learn best practices for project organization to save time through an improved workflow

Book DescriptionUnity engine comes with a great set of features to help you build high-performance games. This Unity book is your guide to optimizing various aspects of your game development, from game characters and scripts, right through to animations.

You’ll explore techniques for writing better game scripts and learn how to optimize a game using Unity technologies such as ECS and the Burst compiler. The book will also help you manage third-party tooling used with the Unity ecosystem. You’ll also focus on the problems in the performance of large games and virtual reality (VR) projects in Unity, gaining insights into detecting performance issues and performing root cause analysis. As you progress, you’ll discover best practices for your Unity C# script code and get to grips with usage patterns. Later, you’ll be able to optimize audio resources and texture files, along with effectively storing and using resource files. You’ll then delve into the Rendering Pipeline and learn how to identify performance problems in the pipeline. In addition to this, you’ll learn how to optimize the memory and processing unit of Unity. Finally, you’ll cover tips and tricks used by Unity professionals to improve the project workflow.

By the end of this book, you’ll have developed the skills you need to build interactive games using Unity and its components.

What you will learn

Apply the Unity Profiler to find bottlenecks in your app, and discover how to resolve them
Discover performance problems that are critical for VR projects and learn how to tackle them
Enhance shaders in an accessible way, optimizing them with subtle yet effective performance tweaks
Use the physics engine to keep scenes as dynamic as possible
Organize, filter, and compress art assets to maximize performance while maintaining high quality
Use the Mono framework and C# to implement low-level enhancements that maximize memory usage and prevent garbage collection

Who this book is forThe book is intended for intermediate Unity game developers who wants to maximize the performance of their game. The book assumes familiarity with C# programming.

Dr. Davide Aversa holds a PhD in artificial intelligence and an MSc in artificial intelligence and robotics from the University of Rome La Sapienza in Italy. He has a strong interest in artificial intelligence for the development of interactive virtual agents and procedural content generation. He served as a Program Committee member of video game-related conferences such as the IEEE conference on computational intelligence and games, and he also regularly participates in game-jam contests. He also writes a blog on game design and game development. Chris Dickinson grew up in a quiet little corner of England with a strong passion for mathematics, science and, in particular, video games. He loved playing them, dissecting their gameplay, and trying to figure out how they worked. Watching his dad hack the hex code of a PC game to get around the early days of copy protection completely blew his mind! His passion for science won the battle at the time; however, after completing a master's degree in physics with electronics, he flew out to California to work in the field of scientific research in the heart of Silicon Valley. Shortly afterward, he had to admit to himself that research work was an unsuitable career path for his temperament. After firing resumes in all directions, he landed a job that finally set him on the correct course in the field of software engineering (this is not uncommon for physics grads, I hear). His time working as an automated tools developer for IPBX phone systems fit his temperament much better. Now he was figuring out complex chains of devices, helping its developers fix and improve them, and building tools of his own. Chris learned a lot about how to work with big, complex, real-time, event-based, user-input driven state machines (sounds familiar?). Being mostly self-taught at this point, Chris's passion for video games was flaring up again, pushing him to really figure out how video games were built. Once he felt confident enough, he returned to school for a bachelor's degree in game and simulation programming. By the time he was done, he was already hacking together his own (albeit rudimentary) game engines in C++ and regularly making use of those skills during his day job. However, if you want to build games, you should just build games, and not game engines. So, Chris picked his favorite publically available game engine at the time--an excellent little tool called Unity 3D--and started hammering out some games. After a brief stint of indie game development, Chris regretfully decided that the demands of that particular career path weren't for him, but the amount of knowledge he had accumulated in just a few short years was impressive by most standards, and he loved to make use of it in ways that enabled other developers with their creations. Since then, Chris has authored a tutorial book on game physics (Learning Game Physics with Bullet Physics and OpenGL, Packt Publishing) and two editions of a Unity performance optimization book (which you are currently reading). He has married the love of his life, Jamie, and works with some of the coolest modern technology as a software development engineer in Test (SDET) at Jaunt Inc. in San Mateo, CA, a Virtual Reality/Augmented Reality startup that focuses on delivering VR and AR experiences, such as 360 videos (and more!). Outside of work, Chris continues to fight an addiction to board games (particularly Battlestar: Galactica and Blood Rage), an obsession with Blizzard's Overwatch and Starcraft II, cater to the ever-growing list of demands from a pair of grumpy yet adorable cats, and gazing forlornly at the latest versions of Unity with a bunch of game ideas floating around on paper. Someday soon, when the time is right (and when he stops slacking off), his plans may come to fruition

Table of Contents

Evaluating Performance Problems
Scripting Strategies
The Benefits of Batching
Optimize Your Art Assets
Faster Physics
Dynamic Graphics
Optimizations for Virtual and Augmented Reality
Masterful Memory Management
The Data-Oriented Technology Stack
Tactical Tips and Tricks

Erscheinungsdatum
Verlagsort Birmingham
Sprache englisch
Maße 75 x 93 mm
Themenwelt Mathematik / Informatik Informatik Grafik / Design
Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Informatik Software Entwicklung Spieleprogrammierung
ISBN-10 1-83855-651-6 / 1838556516
ISBN-13 978-1-83855-651-8 / 9781838556518
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
2D- und 3D-Spiele entwickeln

von Thomas Theis

Buch | Softcover (2023)
Rheinwerk (Verlag)
CHF 41,85