Beginning 3D Game Development with Unity:

Similar documents
Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Unity Game Development Essentials

INTRODUCTION TO GAME AI

By Chris Burton. User Manual v1.60.5

The purpose of this document is to outline the structure and tools that come with FPS Control.

COMPASS NAVIGATOR PRO QUICK START GUIDE

Experiment 02 Interaction Objects

Unity Certified Programmer

Create Your Own World

Learn Unity by Creating a 3D Multi-Level Platformer Game

Space Invadersesque 2D shooter

Game Design Comp 150GD. Michael Shah 3/6/15

Introduction. Modding Kit Feature List

Beginning ios 3D Unreal

Z-Town Design Document

Mastering Autodesk Navisworks 2013

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Chapter 1:Object Interaction with Blueprints. Creating a project and the first level

Shoot It Game Template - 1. Tornado Bandits Studio Shoot It Game Template - Documentation.

Appendix A ACE exam objectives map

Making Your World with the Aurora Toolset

VR Easy Getting Started V1.3

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X

Game Design Document (GDD)

Introducing Photo Story 3

NWN Toolset Module Construction Tutorial

Crowd-steering behaviors Using the Fame Crowd Simulation API to manage crowds Exploring ANT-Op to create more goal-directed crowds

Spell Casting Motion Pack 8/23/2017

Installation Instructions

Obduction User Manual - Menus, Settings, Interface

04. Two Player Pong. 04.Two Player Pong

Tac Due: Sep. 26, 2012

TATAKAI TACTICAL BATTLE FX FOR UNITY & UNITY PRO OFFICIAL DOCUMENTATION. latest update: 4/12/2013

Create Your Own World

Required Materials For complete material(s) information, refer to

SMALL OFFICE TUTORIAL

Appendix H - What Goes Into a Milestone Definition

LabVIEW 8" Student Edition

12 Final Projects. Steve Marschner CS5625 Spring 2016

2D Platform. Table of Contents

Instructions for using Object Collection and Trigger mechanics in Unity

Making Your World - the world building tutorial

Workshop 4: Digital Media By Daniel Crippa

Survival Project. Unit 4 Concept Art. PO2: Understand industry tools and techniques for creating concept art

Full Contents. Survey V8.08 Essentials

Full Contents. Essentials, Workbook

Getting Started with Coding Awbie. Updated

In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds.

SOLIDWORKS 2015 and Engineering Graphics

Tools for Design. with VEX Robot Kit: Randy H. Shih Oregon Institute of Technology SDC PUBLICATIONS

First Level 2D Fundamentals

AutoCAD 2014 Tutorial - First Level: 2D Fundamentals

Individual Test Item Specifications

CONCEPTS EXPLAINED CONCEPTS (IN ORDER)

An Approach to Maze Generation AI, and Pathfinding in a Simple Horror Game

BIMXplorer v1.3.1 installation instructions and user guide

Autodesk Inventor 2016

Full Contents. InRoads Essentials

Introduction Choose and Tell: Legends

and Engineering Graphics

METRO TILES (SHAREPOINT ADD-IN)

3D Top Down Shooter By Jonay Rosales González AKA Don Barks Gheist

Parametric Modeling. with. Autodesk Inventor Randy H. Shih. Oregon Institute of Technology SDC

CRYPTOSHOOTER MULTI AGENT BASED SECRET COMMUNICATION IN AUGMENTED VIRTUALITY

TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER

HERO++ DESIGN DOCUMENT. By Team CreditNoCredit VERSION 6. June 6, Del Davis Evan Harris Peter Luangrath Craig Nishina

How to Make Games in MakeCode Arcade Created by Isaac Wellish. Last updated on :10:15 PM UTC

Save System for Realistic FPS Prefab. Copyright Pixel Crushers. All rights reserved. Realistic FPS Prefab Azuline Studios.

IMGD Technical Game Development I: Introduction

Foreword Thank you for purchasing the Motion Controller!

Macquarie University Introductory Unity3D Workshop

VACUUM MARAUDERS V1.0

Game Design Curriculum Multimedia Fusion 2. Created by Rahul Khurana. Copyright, VisionTech Camps & Classes

Annex IV - Stencyl Tutorial

Warmup Due: Feb. 6, 2018

GAME:IT Junior Bouncing Ball

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

A VIRTUAL TOUR OF THE MEDIANA ARCHEOLOGICAL PARK USING UNITY 3D ENGINE

Using Game Maker. Getting Game Maker for Free. What is Game Maker? Non-event-based Programming: Polling. Getting Game Maker for Free

Using Bloxels in the Classroom

Using Game Maker. Oregon State University. Oregon State University Computer Graphics

A game by DRACULA S CAVE HOW TO PLAY

Tutorial Guide to AutoCAD 2014

Tutorial Guide to AutoCAD 2013

Modo VR Technical Preview User Guide

True bullet 1.03 manual

Tutorial Guide to AutoCAD 2015

I CONNECT. We start with a video intro of the main actress to attract people to connect with the game with facebook, twitter.

Emergent s Gamebryo. Casey Brandt. Technical Account Manager Emergent Game Technologies. Game Tech 2009

Title (Name of App) Preview

Game Maker Tutorial Creating Maze Games Written by Mark Overmars

Catch The Kites A Lightweight Android Game

COMPUTING CURRICULUM TOOLKIT

SOLIDWORKS 2018 Basic Tools

DEVELOPMENT ESSENTIALS:

Module 1 Introducing Kodu Basics

@3 [fijl)~ 8: ~ 0 ~~ ~~~ C

SteamVR Unity Plugin Quickstart Guide

Transcription:

Beginning 3D Game Development with Unity: The World's Most Widely Used Multi-platform Game Engine Sue Blackman Apress*

Contents About the Author About the Technical Reviewer Acknowledgments Introduction Chapter 1: Exploring the Genre 1 Historical Reference 1 Graphical Adventure 4 LucasArts Titles 6 Fast Forward to Real Time 6 What draws people to this genre?... 7 Intriguing Locations and Entertaining Solutions 13 Defining a Style 14 Compartmentalizing Environments 17 Parallax 18 Animation 20 Challenges, Tasks, and Puzzles 20 What went wrong with the genre? 20 Modern Successes of the Genre 22 What basic human characteristics make for fun? 23 Why make your own? 25 Multiple Roles 25 Two Logical Variations for Indies 26 First Person 26 Character 26 Common to Both 27 Design Considerations for First Person 28 Developing the Story and Challenges 29 New to Real Time vs. Pre-Render 31 Chapter Summary 43 xv xvi xvii xviii

CONTENTS Chapter 2: Unity Ul Basics Getting Started 45 Installing Unity and Starting Up 45 Loading or Creating a New Project or Scene 45 The Layout 50 Scene Window 52 Game Window 52 Hierarchy View 53 Project View 54 Inspector 54 Toolbar 55 Menus 57 File 57 Edit 57 Assets 58 GameObject 58 Component Menu 59 Terrain Menu 59 Window Menu 59 Help Menu 59 Creating Simple Objects 59 Selecting and Focus.. 65 Transforming objects 66 Snaps 69 Vertex Snaps 70 Scene Gizmo 71 Non-Snap Alignment 72 Lights 74 3D Objects 83 Meshes 83 Sub-Objects of a Mesh 83 Mapping 85 Materials 92 Summary 92 Chapter 3: Scripting: Getting Your Feet Wet 93 What is a Script? 93 Components of a Script 94 vi

CONTENTS Functions 94 Variables 103 Picking an Object in the Game 108 Counting Mouse Picks 114 Conditionals and State 115 Deconstructing the Conditional 118 Order of Evaluation 119 Chapter Summary 119 Chapter 4: Terrain Generation: Creating a Test Environment 121 Flythrough Scene Navigation 126 Topography 126 Paint Texture 131 Trees 135 Sky.143 Back to the Trees 147 Packages 148 Paint Details 159 Creating Your Own Terrain Assets 164 Export vs. Use Native Format 167 Terrain Settings 167 Shadows 169 Fog 176 Chapter Summary 178 Chapter 5: Navigation and Functionality 181 Navigation 181 Fun with Platforms 207 Collision Walls 220 Your First Build 241 Summary 249 Chapter 6: Cursor Control 251 Cursor Visibility 251 Custom Cursors 254 GUI Layer 255 Texture Importer 257 Color Cues 268

CONTENTS Cursor Position 268 Managing a GUITexture Cursor 270 Object-to-Object Communication 272 Mouse Over Cursor Changes 275 Distance Check 281 Quick Publish 285 Object Reaction to Mouse Over 287 Making the New Functionality Optional 305 Preventing Mouse Over Functionality While Navigating 307 Chapter Summary 308 Chapter 7: Action Objects 309 Importing Assets 309 Importing 311 FBX Importer 323 More Control over Individual Objects 331 Individual Transforms 336 Complex Hierarchies 337 Parenting 338 Setting up Materials 341 The Keys 342 The Chest 348 Flower 352 Shadows 355 Static Objects 356 Colliders 361 Animation 368 Accessing Store in Root 371 Adding Sound F/X 375 Setting up a Two-State Animation 380 Using Unity's Animation view 383 Changing Imported Animations 395 Triggering Another Object's Animations 400 Limitations 404 Summary 404 viii

CONTENTS Chapter 8: Managing State 407 Identifying the Possibilities 408 Introducing the Plot 408 Walk-through 409 Action Items 411 Stunt Doubles 412 Developing a Flow Chart 412 Separating State Metadata Transition Action 414 Defining Interaction and State 414 Visualizing State Transitions 415 State Diagram 419 Evaluating the Results 422 Lookup Table 423 Parsing a String 425 The Object Lookup Script 427 Action Related Messages 437 Chapter Summary 438 Chapter 9: Object Metadata 439 State-Related Metadata 440 State of Being/Location 442 Visibility Type 442 Game Notes 443 Current State 444 Mouse Pick Revisited 444 Adding Metadata 448 Chapter Summary 452 Chapter 10: Message Text 453 GUI Skin 453 OS Font Support 457 Text Visibility 466 Using the Object Metadata 471 Handling the Action 475 Getting Real 481 Managing Audio 482 Processing Animation 484 ix

CONTENTS Loading the Start-Up Values 488 More on Fonts and Text 492 Activating the Action Message 496 Dynamic Read Time 500 A Final Refinement 502 Summary 504 Chapter 11: Inventory Logic 505 Layers 505 Converting the Cursor 510 A Few More Refinements 514 Inventory Screen 516 Extending the Lookup Table 526 Leaving Breadcrumbs 529 Adding Inventory Icons 530 2D Object Handling 539 Chapter Summary 543 Chapter 12: Managing the Inventory 545 Tags 555 Inventory Layout 558 Inventory Overflow 560 Setting the Limits 566 Inventory Grid Limits 567 Arrow Limits 571 Adding and Removing Objects from Inventory 573 Removing Objects from Inventory 574 Adding Objects to Inventory 577 Combining Items 578 Wrong Picks 580 Summary 584 Chapter 13: Finishing the Basic Functionality 587 Handling 3D Object Visibility 587 Developing Non-Keyframed Fades 592 Side Effects of Visibility Changes 593 Dealing with Colliders 595 Processing No-Match Cursors 598 x

m CONTENTS Random Replies 599 Dropping Cursors in the 3D Scene 605 Building the Visibility Function 610 Action Message Revisited 612 Back to Fades 616 Object to Object Interaction 618 Positioning Objects in the Scene 625 Special Cases 629 Extensible Code 630 Reply, No State Change 631 Activating the Treasure Chest Sequence 632 Reading Material 643 Hiding the Message 651 Chapter Summary 652 Chapter 14: Getting Down to Game 655 Drop Box 655 Reviving the Flower 664 Frustum Culling 670 Pouring the Elixir 672 Solving the Vial Visibility 674 Making the Magic Happen 675 Destroying the GameObjects 680 Activating the Prefab 682 Camera Focus 683 Camera Match Metadata 686 Scripting the Camera Match 688 Importing the Final Assets 694 Bringing in the Structures 694 Materials and Lightmapping 697 Underground 703 Into the Temple 708 Holograph Image 713 The Balcony 718 Getting the Topi Fruit 721 The Elements 732 The Waterfall 735 The Shrine's Guardian 741

m CONTENTS The Bouncer 746 Summary 752 Chapter 15: A Maze and the Final Level 753 Maze Geometry 753 Managing the Maze 758 Drop Points 761 Checking for Traps 764 Confiscated Weapons 767 Playing the Odds 770 User Reset 770 Activating the Drawer 772 Easter Egg 780 The Cavern Portal 782 The Final Level 785 Tree Generator 785 The Standing Stones 788 The Prize 790 A Touch of Wind 791 The Final Terrain 792 The Final Sequence 799 Environmental Effects 805 Animation Events 809 Add Some Sparkles 810 Multiple Topis 812 Load Level 818 Summary 819 Chapter 16: Menus and Levels 821 Menu Access: The Mini-Menu 821 Confirm Dialog 825 Tracking Menu Mode 828 The Main Menu 830 The Settings Menu 834 Player Settings 837 Filling in the Controls 839 Color Selector 842 Finishing Audio 849 Sound FX 849 xii

8 CONTENTS Ambient Sound 851 Music 852 Voice or Dialog Volume 855 Custom Skin for Menus 856 Suspending Navigation and Scene Interaction Finishing Menus 860 Real-Time Backgrounds 862 Start Menu/Level 866 Managing the Backgrounds 868 Changing Levels 873 Save/Restore 874 Saving the Game Data 877 Loading the Saved Data 881 Tidy Up 885 Finally, Back to the Start 889 Is It Done Yet? 899 Final Tasks 902 Publishing 903 Publishing 904 Summary 905 Chapter 17: Beyond the Basics 907 Additional Features 907 HUD Score/Rating 907 Hints/Difficulty 908 Multiple Saves 909 Physics and Projectiles 910 Retaining Data 910 Additional Content 911 From First Person to Third Person 912 Characters 912 Cameras 913 Character Dialog 914 Dialog Trees 915 Character Alternatives 919 Design Considerations for Mobile Platforms 919 License, Hardware, and Setup 920 Scripting 921 xiii

CONTENTS Navigation and Input 922 Shaders and Textures 923 Poly Count 924 Batching 925 Colliders 927 Menus and GUI 927 Miscellaneous 927 Design Doc 928 The Story/Game in Its Briefest Form 928 The Story/Game in More Detail 929 Who Is the Game For? 931 What is the Target Platform? 931 Uniqueness and Marketability 931 Controls and Navigation 931 Game Mechanics 932 Assessment, Scoring, and Winning 933 Level Design 933 Visual Style 934 User Interface 934 Characters and Action Objects 934 Environmental and Non-Interactive Assets 935 Sound F/X 936 Music 936 Voice 936 Chapter Summary 936 Appendix A: SSE Shader Graphs 939 The SSE BetterLightmap Shader Graph 939 The SSE ReflectiveAlpha Shader Graph 940 The SSE ReflectiveCutout Shader Graph 941 Appendix A: Key Codes 943 Appendix A: Final Sequence 949 Index 951 xiv