O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Practical Game Development with Unity® and Blender™

Book Description

Today's game developers, particularly those working in smaller, independent studios, need to be expert generalists that is, skilled in a wide range of tasks, from coding and level design to 3D modeling, animation, and more. Beyond knowing how to make great games, they also need the perspective and the experience to develop products quickly-all while working with limited resources, time, and budgets. They must take a holistic approach to the art and science of game development, with an emphasis on optimizing workflow. In PRACTICAL GAME DEVELOPMENT WITH UNITY AND BLENDER, author and developer Alan Thorn presents a unique 10-stage workflow for development success, offering advice and ideas (and plenty of practical examples) for developing games quickly and efficiently using some of today's most popular (and free!) software tools. You'll work with Unity (game engine), Blender (3D modeling and animation), and GIMP (image editor), fusing them into a single, productive workflow. Far beyond simply teaching you to operate a specific piece of software, this book guides you through the full process of game creation, with concrete instruction and tangible examples (including project and asset files, available on the book's companion website). PRACTICAL GAME DEVELOPMENT WITH UNITY AND BLENDER will help you become a more powerful developer-the kind of broadly skilled generalist who can thrive at any game studio, large or small.

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Dedication
  4. Acknowledgments
  5. About the Author
  6. Contents
  7. Introduction
  8. Chapter 1 The 10-Stage Workflow
    1. Introducing the 10-Stage Workflow
    2. Stage 1: Brainstorming
    3. Stage 2: Initial Design
    4. Stage 3: Prototyping
    5. Stage 4: Refining Design
    6. Project Management
    7. Stage 5: Asset Creation
    8. Stage 6: Importing Assets
    9. Stage 7: Level Design
    10. Stage 8: Scripting
    11. Stage 9: Testing
    12. Stage 10: Building
    13. Recommendations for Working Practice
    14. Summary
  9. Chapter 2 Blender-to-Unity Workflow
    1. Configuring the Blender GUI
    2. The Close-Without-Saving “Bug”
    3. Exporting Blender Models to Unity
    4. Exploring FBX Files
    5. Tutorial: Importing FBX Files into Unity
    6. Summary
  10. Chapter 3 Modular Environments and Static Meshes
    1. Advantages of the Modular Method
    2. Getting Started with Modular Environments in Blender
    3. Extending from the Base Tile
    4. Modular Environment Blender Workflow
    5. UV Mapping and Texture Creation
    6. Importing and Configuring Environments in Unity
    7. Using Prefabs
    8. Static Batching
    9. Summary
  11. Chapter 4 Terrain
    1. Creating Terrain in Unity
    2. Evaluating Unity Terrains
    3. Blender Terrain Modeling
    4. Terrain Resolution
    5. Texture-Painting Terrain
    6. Working with Roads and Paths
    7. Summary
  12. Chapter 5 Animation Workflows
    1. Animation Units: The Keyframe
    2. Preparing for Animation in Blender
    3. Keyframe Animations from Blender to Unity
    4. Follow-Path Animations and Animation Baking
    5. Blend Shapes and Shape Keys
    6. Bones and Rigging
    7. Summary
  13. Chapter 6 Objects, Dependencies, and Event-Driven Programming
    1. Hard-Coded Dependencies
    2. Solving DI: Component-Based Design and Messages
    3. Taking Messages Further: BroadcastMessage and Hierarchies
    4. Sending Messages to Selected Objects
    5. Sending Messages to Parents
    6. Notification System
    7. NotificationsManager In-Depth
    8. Singletons
    9. Messages and Active Objects
    10. Traversing Game Object Hierarchies
    11. Summary
  14. Chapter 7 Retopologizing
    1. High-Poly Meshes and Subdivision Surfaces
    2. High-Poly Meshes and Real-Time Games
    3. Retopologizing in Practice
    4. Using Decimate
    5. Summary
  15. Chapter 8 Saved Games and Persistent Data
    1. Persistent Data
    2. Player Preferences
    3. Player Preferences: Going Further
    4. Customizing Persistent Data
    5. XML Files—or JSON or Binary?
    6. Class Serialization
    7. Getting Started with XML Serialization
    8. Saving Data to an XML File
    9. Read Data from an XML File
    10. Working with the SaveState Class
    11. Summary
  16. Chapter 9 Baking
    1. What Is Baking?
    2. Preparing for Lightmapping in Unity
    3. Lightmapping: Lightmap Resolution
    4. Lightmapping Mode
    5. Indirect Illumination and Ambient Occlusion
    6. Baking Lightmaps
    7. Baking Maps in Blender
    8. Compositing Render Passes in GIMP
    9. Baking Real-Time Lighting with Unity Light Probes
    10. Baking Navigation
    11. Summary
  17. Chapter 10 Unity, Blender, and Other Software
    1. Other Software
    2. MakeHuman
    3. GIMP
    4. Inkscape
    5. MyPaint and Krita
    6. Synfig Studio
    7. Tiled
    8. MonoDevelop
    9. BMFONT
    10. TexturePacker
    11. LibreOffice
    12. Anime Studio Pro
    13. Audacity
    14. SFXR
    15. Summary
  18. Appendix A Game Development Resources
  19. Index