My Account Log in

3 options

Unity 5 game optimization : master performance optimization for Unity3D applications with tips and techniques that cover every aspect of Unity3D Engine / Chris Dickinson.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Dickinson, Chris, author.
Series:
Community experience distilled.
Community experience distilled
Language:
English
Subjects (All):
Unity (Electronic resource).
Video games--Programming.
Video games.
Computer graphics--Software.
Computer graphics.
Physical Description:
1 online resource (296 p.)
Edition:
1st edition
Other Title:
Master performance optimization for Unity3D applications with tips and techniques that cover every aspect of Unity3D Engine
Unity five game optimization
Place of Publication:
Birmingham : Packt Publishing, 2015.
Language Note:
English
System Details:
Mode of access: World Wide Web.
text file
Biography/History:
Dickinson Chris: 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
Summary:
Master performance optimization for Unity3D applications with tips and techniques that cover every aspect of the Unity3D Engine About This Book Optimize CPU cycles, memory usage, and GPU throughput for any Unity3D application Master optimization techniques across all Unity Engine features including Scripting, Asset Management, Physics, Graphics Features, and Shaders A practical guide to exploring Unity Engine's many performance-enhancing methods Who This Book Is For This book is intended for intermediate and advanced Unity developers who have experience with most of Unity's feature-set, and who want to maximize the performance of their game. Familiarity with the C# language will be needed. What You Will Learn Use the Unity Profiler to find bottlenecks anywhere in our application, and discover how to resolve them Implement best-practices for C# scripting to avoid common pitfalls Develop a solid understanding of the rendering pipeline, and maximize its performance through reducing draw calls and avoiding fill rate bottlenecks Enhance shaders in a way that is accessible to most developers, optimizing them through subtle yet effective performance tweaks Keep our scenes as dynamic as possible by making the most of the Physics engine Organize, filter, and compress our art assets to maximize performance while maintaining high quality Pull back the veil on the Mono Framework and the C# Language to implement low-level enhancements that maximize memory usage and avoid garbage collection Get to know the best practices for project organization to save time through an improved workflow In Detail Competition within the gaming industry has become significantly fiercer in recent years with the adoption of game development frameworks such as Unity3D. Through its massive feature-set and ease-of-use, Unity helps put some of the best processing and rendering technology in the hands of hobbyists and professionals alike. This has led to an enormous explosion of talent, which has made it critical to ensure our games stand out from the crowd through a high level of quality. A good user experience is essential to create a solid product that our users will enjoy for many years to come. Nothing turns gamers away from a game faster than a poor user-experience. Input latency, slow rendering, broken physics, stutters, freezes, and crashes are among a gamer's worst nightmares and it's up to us as game developers to ensure this never happens. High performance does not need t...
Contents:
Cover; Copyright; Credits; About the Author; Acknowledgments; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Detecting Performance Issues; The Unity Profiler; Launching the Profiler; Editor or standalone instances; Editor profiling; The Unity Webplayer connection; Remote connection to an iOS device; Remote connection to an Android device; The Profiler window; Controls; Best approaches to performance analysis; Verifying script presence; Verifying script count; Minimizing ongoing code changes; Minimizing internal distractions; Minimizing external distractions
Targeted profiling of code segmentsProfiler script control; Custom CPU Profiling; Saving and loading Profiler data; Saving Profiler data; Loading Profiler data; Final thoughts on Profiling and Analysis; Understanding the Profiler; Reducing noise; Focusing on the issue; Summary; Chapter 2: Scripting Strategies; Cache Component references; Obtaining Components using the fastest method; Removing empty callback declarations; Avoiding the Find() and SendMessage() methods at runtime; Static classes; Singleton Components; Assigning references to pre-existing objects; A global messaging system
A globally accessible objectRegistration; Message processing; Implementing the messaging system; Message queuing and processing; Implementing a custom message; Message registration; Message sending; Message cleanup; Wrapping up the messaging system; Disabling unused scripts and objects; Disabling objects by visibility; Disabling objects by distance; Consider using distance-squared over distance; Avoid retrieving string properties from GameObjects; Update, coroutines, and InvokeRepeating; Consider caching Transform changes; Faster GameObject null reference checks; Summary
Chapter 3: The Benefits of BatchingDraw Calls; Materials and Shaders; Dynamic Batching; Vertex attributes; Uniform scaling; Dynamic Batching summary; Static Batching; The Static flag; Memory requirements; Material references; Static Batching caveats; Edit Mode debugging of Static Batching; Avoiding instantiating static meshes at runtime; Visibility and rendering; Static Batching summary; Summary; Chapter 4: Kickstart Your Art; Audio; Loading audio files; Profiling audio; Additional loading options; Encoding formats and quality levels; Audio performance enhancements
Minimize active Audio Source countMinimize Audio Clip references; Enable Force to Mono for 3D sounds; Resample to lower frequencies; Consider all encoding formats; Beware of streaming; Apply Filter effects through Mixer groups to reduce duplication; Use ""WWW.audioClip"" responsibly; Consider Audio Module files for background music; Texture files; Compression formats; Texture performance enhancements; Reduce Texture file size; Use Mip Maps wisely; Manage resolution downscaling externally; Adjust Anisotropic Filtering levels; Consider Atlasing
Adjust compression rates for non-square Textures
Notes:
Includes index.
Includes bibliographical references and index.
Description based on online resource; title from PDF title page (ebrary, viewed January 5, 2016).
ISBN:
9781785888458
1785888455
OCLC:
930868475

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account