You are previewing Game Development with Unity.

Game Development with Unity

Cover of Game Development with Unity by Michelle Menard Published by Course Technology PTR
  1. Copyright
    1. Dedication
  2. About the Author
  3. I. In the Beginning. . .
    1. 1. Preface
      1. Inboxes and Emails
    2. 2. Introduction
      1. What Will Be Covered (and What Not)
      2. Intended Audience
      3. The Book’s Structure
      4. Installation Instructions
    3. 3. An Overview of the Unity Engine
      1. Getting Acquainted with the Interface
      2. Unity’s Basic Concepts
      3. Available Unity Licenses
      4. Editor Summary
    4. 4. Your First Game: Where to Start?
      1. Basic Design Theory
      2. Finding the Core Idea
      3. Planning It All Out
      4. Getting Started
  4. II. Assembling the Game Assets
    1. 5. Setting the Stage with Terrain
      1. Unity’s Terrain Engine
      2. Customizing Terrain
      3. Lighting and Shadows
      4. Adding a Skybox and Distance Fog
      5. Adding Water to Your Terrain
    2. 6. Building Your Environment: Importing Basic Custom Assets
      1. Design First, Then Build
      2. Importing Textures
      3. Importing Basic Meshes
      4. Setting Up Simple Shaders and Materials
      5. Helpful Tips for Working with Assets
    3. 7. Creating Characters
      1. Basic PC 101
      2. Importing Characters and Other Nonstatic Meshes
  5. III. Bringing Your Props to Life with Interactivity
    1. 8. Scripting in Unity
      1. One Editor, Three Languages, a Whole Lotta Choice
      2. Picking a Script Editor, or, Do you Want Autocompletion with That?
      3. Fundamentals of Scripting in Unity
      4. Operators and Comparisons
      5. Conditionals
      6. Loops
      7. Functions
      8. Variable Scope
      9. Naming Conventions
    2. 9. Writing the Character and State Controller Scripts
      1. Setting It Up and Laying It Out
      2. A Simple Third-Person Controller
      3. Setting Up Unity’s Input Manager
      4. Hooking Up the Camera
      5. Assembling the Status Controller
      6. Completed Scripts
    3. 10. Hooking Up the Animations
      1. Animation in Unity
      2. Animation API
      3. Setting Up the PC’s Animations
      4. Creating Animations Inside Unity
      5. Setting Up a New Animation Clip
      6. Adding Animation Events
      7. Completed Scripts
    4. 11. Using Triggers and Creating Environment Interactions
      1. Triggers and Collision
      2. Setting Up a Basic Trigger Object
      3. Setting Up Other Kinds of Triggers
      4. Completed Scripts
    5. 12. Building Adversaries and AI
      1. Artificial Intelligence: Definitely Artificial, Not Much Intelligence
      2. Setting Up a Simple Enemy
      3. Hooking Up Widget’s Attacks
      4. Rewarding the Player for a Job Well Done
      5. Spawning and Optimization
      6. Completed Scripts
    6. 13. Designing the Game’s GUI (Graphical User Interface)
      1. Basic Interface Theory
      2. Unity’s GUI System
      3. A Custom Skin for Widget
      4. Setting Up the HUD
      5. A Sample Pop-up Screen
      6. Adding Full-Screen Menus
      7. Completed and Updated Scripts
  6. IV. Polish and the Finishing Touches
    1. 14. Creating Lighting and Shadows
      1. Types of Lights
      2. Lighting the World
      3. Creating Shadows
      4. Other Light Effects
    2. 15. Using Particle Systems
      1. Particles: From Smoke to Stardust
      2. Setting Up a Simple System
      3. Advanced Particle Components
      4. Particles for Widget
      5. Updated Scripts
    3. 16. Adding Audio and Music
      1. Feedback and Ambience
      2. Setting Up a Simple Audio Clip
      3. Updated Scripts
  7. V. Publishing and Distributing Builds
    1. 17. Basic Unity Debugging and Optimization
      1. Debugging in Unity
      2. Optimization
    2. 18. Creating the Final Build
      1. Prepping for the Build
      2. Other Build Features
      3. The End of the Road?
O'Reilly logo

Chapter 17. Basic Unity Debugging and Optimization

Anyone who’s written any kind of software knows about the importance of debugging and code optimization. Bugs and errors always creep in (often in completely unexpected and hard-to-test areas), and code can run slower and slower as more stuff gets thrown in. Most games are pretty complicated pieces of software, and many months are devoted at the end of the project to bug finding, fixing, and optimization.

Beyond code, the artwork in a game also needs to be compressed and optimized, both to speed up performance and to reduce final file size. You may have the best-looking game ever, but if it doesn’t fit on your platform’s distributable, no one is going to see it. The new editions of Unity now include ...

The best content for your career. Discover unlimited learning on demand for around $1/day.