Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Unity 3.x Game Development Essentials

You're reading from   Unity 3.x Game Development Essentials If you have an idea for a game but lack the skills to create it, this book is the perfect introduction. There‚Äôs lots of handholding through all the essentials, culminating in the building of a full 3D game.

Arrow left icon
Product type Paperback
Published in Dec 2011
Publisher Packt
ISBN-13 9781849691444
Length 488 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Will Goldstone Will Goldstone
Author Profile Icon Will Goldstone
Will Goldstone
Arrow right icon
View More author details
Toc

Table of Contents (21) Chapters Close

Unity 3.x Game Development Essentials
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Enter the Third Dimension 2. Prototyping and Scripting Basics FREE CHAPTER 3. Creating the Environment 4. Player Characters and Further Scripting 5. Interactions 6. Collection, Inventory, and HUD 7. Instantiation and Rigidbodies 8. Particle Systems 9. Designing Menus 10. Animation Basics 11. Performance Tweaks and Finishing Touches 12. Building and Sharing 13. Testing and Further Study Index

Index

A

  • Add button / Step 6—The grass is always greener
  • Add Event button / Adding animation events
  • AddForce() command / Adding a force to the Rigidbody
  • Add Keyframe button / Creating keyframes
  • Alt Positive parameter / Scripting to throw coconuts
  • angular drag, Rigidbody component / The Rigidbody component
  • animation compression section
    • Keyframe Reduction and Compression section / modeling applicationsanimations sectionAnimation Compression
    • Keyframe Reduction section / modeling applicationsanimations sectionAnimation Compression
    • Off section / modeling applicationsanimations sectionAnimation Compression
  • animation panel
    • creating / Creating the Fader and using the Animation panel
    • Animation panel overview / Scaling for various resolutions
    • overview / Animation panel overview
    • Animation Clip, creating / Creating an animation clip
    • Keyframes, creating / Creating keyframes
    • Animation Curves, using / Using animation curves
    • Animation Events, adding / Adding animation events
    • Loading GUI, animating / Creating and animating the Loading GUI
    • Loading GUI, creating / Creating and animating the Loading GUI
    • scenes loading, animation events used / Loading scenes with animation events, Storing and instantiating the Loading GUI
  • Animation panel / Creating and animating the Loading GUI
  • animations component / Disabling automatic animation
  • Animations component / Targets and coconut collisions
  • animations parameter / Disabling automatic animation
  • animations section, modeling application
    • about / Animations
    • dont import method / Animations
    • store in original roots method / Animations
    • store in nodes method / Animations
    • store in root method / Animations
    • application wrap mode drop-down menu / Animations
  • Animation window / Animation panel overview
  • anisotropic textures / Quality Settings
  • anti aliasing / Quality Settings
  • Application.LoadLevel() function / Win sequence approach
  • Application.Quit() command / Scripting button actions, Quit button platform automation
  • Application.Quit() function / Scripting button actions
  • Application class / Loading scenes
  • application wrap mode drop-down menu / Animations
  • arguments, function
    • C# / functionsreturn typereturn type, functionArguments
    • JavaScript / functionsreturn typereturn type, functionArguments
  • array / Using arrays and loops for commands on multiple objects
  • array length / Understanding arrays
  • arrays, power cell HUD
    • about / Understanding arrays
    • HUD array, adding / Adding the HUD array
    • textures, assigning to array / Assigning textures to the array
    • HUD, disabling for game start / Disabling the HUD for game start
    • HUD, enabling during runtime / Enabling the HUD during runtime
    • power generator, adding / Adding the power generator
  • assets / Assets involved
  • assets, collision detection
    • creating / Creatioutpost, openingcollision detectionng new assets
  • assets;about / Assets
  • Asset Selection window / Painting procedure
  • assets folder / External modeling applications
  • audio, campfire particle systems
    • adding, to fire / Adding audio to the fire
    • 3D Audio / 3D Audio
  • audio, outpost model
    • adding / Adding audio
  • audio listener, main camera (child) / Audio listener
  • audio source component
    • including / Including the Audio Source component
  • Audio Source component / The hills are alive!
  • AudioSource component / Loading scenes
  • audio source component, including / Including the Audio Source component
  • automatic animation, outpost model
    • disabling / Disabling automatic animation
  • Awake() function / Find() and FindWithTag()
  • axes, mouse look (script) / Mouse Look (Script)

B

  • baked-only point lights
    • lighting inside / Lighting inside with Baked-Only Point Lights
  • bake option / Baking the scene
  • bake selected option / Baking the scene
  • Base Texture Resolution / Setting the resolution
  • batching / Standalone
  • battery object
    • rotationAmount / Adding rotation
  • BeginGroup() function / Pixel-specific positioning, Resolution-independent positioning
  • billboarding / Step 6—The grass is always greener
  • bit mask technique / Checking grounded
  • blend weights / Quality Settings
  • Book Assets folder / Creating the power cell prefab
  • boolean (js) / bool (c#) / Variable data types
  • box collider / Adding colliders
  • Brush Size / Place Trees
  • build
    • about / Player Settings
  • build option
    • about / Build options
    • web player streamed / Web Player Streamed
    • PC build / PC or Mac standalone
    • Mac OS X standalone / PC or Mac standalone
    • OSX dashboard widget / OSX Dashboard Widget
  • build settings
    • about / Build Settings

C

  • C# behaviour, scripting
    • about / What's inside a new C# behaviour
    • basic functions / Basic fscriptingC# behaviourunctions
    • Start() function / Basic fscriptingC# behaviourunctions
    • C#, variables / Variables in C#
  • C# behaviour, scripting;about / What's inside a new C# behaviour
  • C# variables
    • syntax / Variables in C#
  • camera clip planes / Camera Clip Planes and Fog
  • cameras
    • about / Cameras
    • projection mode / Projection mode—3D versus 2D
    • 3D versus 2D / Projection mode—3D versus 2D
    • Field of View (FOV) / Projection mode—3D versus 2D
    • Heads Up Display (HUD) elements / Projection mode—3D versus 2D
  • campfire particle systems
    • fire, creating / Creating fire
    • smoke, blowing / Blowing smoke!
  • can control, character motor (script) / Character Motor (Script)
  • canThrow variable / Activating coconut throw
  • capsule collider / Collision detection
  • Cartesian coordinate method / Coordinates
  • CellPickup() function
    • adding / Adding the CellPickup() function
    / Enabling the HUD during runtime
  • center, character control / Character Controller
  • character
    • about / Anatprefabs, inspectoraboutomy of a character
  • character collision detection
    • scrioting for / Scripting for character collision detection
    • OnControllerColliderHit, working with / Working with OnControllerColliderHit
    • doorIsOpen / Working with OnControllerColliderHit
    • doorTimer / Working with OnControllerColliderHit
    • doorOpenTime / Working with OnControllerColliderHit
    • doorOpenSound/doorShutSound / Working with OnControllerColliderHit
    • CharacterController component / Working with OnControllerColliderHit
  • character control, First Person Controller (parent)
    • height / Character Controller
    • radius / Character Controller
    • SlopeLimit / Character Controller
    • StepOffset / Character Controller
    • SkinWidth / Character Controller
    • MinMoveDistance / Character Controller
    • center / Character Controller
  • CharacterController.Move function / Moving the character
  • character control script
    • about / Scripting for character movement
    • deconstructing / Deconstructing the script
  • character motor (script), First Person Controller (parent)
    • about / Character Motor (Script)
    • can control / Character Motor (Script)
    • use fixed update / Character Motor (Script)
    • movement / Character Motor (Script)
    • jumping / Character Motor (Script)
    • moving platform / Character Motor (Script)
    • sliding / Character Motor (Script)
  • charge variable / Adding the HUD array, Assigning textures to the array
  • clear option / Baking the scene
  • co-routines
    • using, to time game elements / Using co-routines to time game elements
  • coconut prefab
    • creating / Creating the coconut prefab
  • coconuts
    • removing / Removing coconuts
    • collision detection script, writing / Writing the Coconut collision detection script
  • coconut shy game
    • prefab, editing / Editing the Prefab
    • Trail Renderer component / Trail Renderer component
    • prefab, updating / Updating the prefab
  • coconutShy model / The coconut shy
  • coconutShy object / The coconut shy
  • coconut shy shack
    • adding / Adding the coconut shy shack
  • coconut throw
    • activating / Activating coconut throw
  • Coconut Thrower script / Instantiating the coconut
  • collectSound variable / Adding the HUD array
  • collider, ray casting
    • resetting / Resetting the collider
  • collider, types
    • primitive collider / Collision detection
    • mesh collider / Collision detection
    • capsule collider / Collision detection
    • sphere collider / Collision detection
  • colliders, outpost model
    • adding / Adding colliders
    • Scene window / Adding colliders
    • mesh collider / Adding colliders
    • box collider / Adding colliders
    • primitive collider / Adding colliders
  • collider scale / Collider scale
  • collision detection
    • about / Collisions and triggers, Approach 1—Collision detection, Collision detection
    • assets, creating / Creatioutpost, openingcollision detectionng new assets
    • character collision detection, scripting for / Scripting for character collision detection
    • OnControllerColliderHit, working with / Working with OnControllerColliderHit
    • OpenDoor() custom function / OpenDoor() custom function
    • function, declaring / Declaring the function
    • door status, checking / Checking door status
    • audio, playing / Playing audio
    • script, testing / Testing the script
    • colliders, extending / Extending colliders
    • animation, playing / Playing animation
    • procedure, reversing / Reversing the procedure
    • code, maintainability / Code maintainability
    • drawbacks / Drawbacks of collision detection
  • collision detection, ray casting
    • disabling, with comments / Disabling collision detection with comments
  • collision event
    • about / Collisions and triggers
  • collisions / Polygons, edges, vertices, and meshes
    • about / Collisions and triggers
    • ignoring, with layers / Ignoring collisions with layers
  • Color.a property / Adding animation events
  • Color Variation / Place Trees
  • Command + 6 (Mac) / Adding animation events
  • Command + Backspace (Mac) / Storing and instantiating the Loading GUI
  • commands
    • about / Commands
  • comments
    • about / Comments
  • components;about / Components
  • conditions
    • about / Multiple conditions
    • for loops / For loops
  • constraints, Rigidbody component / The Rigidbody component
  • continous collision detection / Predictive collision detection
  • continous dynamic / Predictive collision detection
  • control bar, scene view
    • about / Control bar
  • Controllers package / Anatprefabs, inspectoraboutomy of a character
  • Control Texture Resolution / Setting the resolution
  • control tools, scene view
    • translate tool [W] / Control toolsUnity interfacescene view
    • rotate tool[E] / Control toolsUnity interfacescene view
    • scale tool [R] / Control toolsUnity interfacescene view
  • coordinates
    • about / Coordinates
  • Create button / Setting the scene, Introducing scripting
  • create button, scene view
    • about / Create button
  • Create New Project tab / Your first Unity project
  • cross-platform settings / Cross-Platform Settings
  • crosshair
    • adding, to screen / Adding the crosshair
    • GUI texture, toggling / Toggling the crosshair GUI Texture
  • Ctrl + 6 (PC) / Adding animation events
  • cubemap / Step 9—Look, there! Up in the skybox!
  • currentDoor argument / Code maintainability
  • custom function
    • calling / functionscustom function, declaringCalling a custom function
  • custom function, calling
    • JavaScript / functionscustom function, declaringCalling a custom function
  • custom function, declaring
    • C# / Declaring a custom function
    • JavaScript / Declaring a custom function

D

  • 3D Audio / 3D Audio
  • 3D vectors / Vectors
  • 3D world, elements
    • coordinates / Coordinates
    • Z-axis / Coordinates
    • Cartesian coordinate method / Coordinates
    • local space versus world space / Local space versus world space
    • object space / Local space versus world space
    • parent-child relationships / Local space versus world space
    • 3D vectors / Vectors
    • vectors / Vectors
    • cameras / Cameras
    • polygons / Polygons, edges, vertices, and meshes
    • edges / Polygons, edges, vertices, and meshes
    • meshes / Polygons, edges, vertices, and meshes
    • collisions / Polygons, edges, vertices, and meshes
    • polygon count / Polygons, edges, vertices, and meshes
    • materials / Materials, textures, and shaders
    • shader / Materials, textures, and shaders
    • textures / Materials, textures, and shaders
  • Debug commands
    • used, for checking scripts / Checking scripts with Debug commands
  • Destroy() command / Adding Trigger Collision Detection, Switching lights and removing the HUD, Checking for a win
  • Detail resolution map / Setting the resolution
  • Detail resolution per patch / Setting the resolution
  • directional light / Step 7—Let there be lights!
  • dont import method / Animations
  • DoorCheck() function / Migrating code—writing a DoorManager script, Casting the ray, Scripting for trigger collisions
  • door child object / Extending colliders
  • doorLight variable / Switching lights and removing the HUD
  • DoorManager script / Migrating code—writing a DoorManager script
  • Door Manager script, ray casting
    • writing / Migrating code—writing a DoorManager script
  • dooropen animation / Setting up the outpost model
  • dooropen argument / Code maintainability
  • doorOpenSoun / Playing audio
  • doorOpenSound argument / Code maintainability
  • Door Open Sound public variable / Testing the script
  • Door Open Sound variable / Testing the script
  • doorshut animation / Setting up the outpost model
  • Door Shut Sound public variable / Testing the script
  • doorTimer variable / Reversing the procedure
  • door unlock
    • signifying / Signifying door unlock
    • locked light, adding / Adding the locked light
    • HUD, removing / Switching lights and removing the HUD
    • lights, switching / Switching lights and removing the HUD
  • dot syntax
    • about / Inter-script communication and Dot Syntax, GetComponent, Dot Syntax
    • C# / Dot Syntax
    • JavaScript / Dot Syntax
  • drag, Rigidbody component / The Rigidbody component

E

  • edges / Polygons, edges, vertices, and meshes
  • Edit Animation Event window / Loading scenes with animation events
  • ellipsoid particle emitter
    • about / Particle Emitter
    • settings / Particle Emitter
  • else if statement / Adjusting hints to show progress
  • else statement / Disabling the HUD for game start, Displaying streamed loading progress
  • empty objects, prototyping environment
    • duplicating / Grouping and duplicating with empty objects
    • grouping / Grouping and duplicating with empty objects
  • enabled parameter / Activating coconut throw
  • enemy argument / functionscustom function, declaringCalling a custom function
  • enemyName argument / functionscustom function, declaringCalling a custom function
  • Environment parent object / Positioning trees
  • extrapolate, Rigidbody component / The Rigidbody component

F

  • fader
    • Keyframes, creating / Creating keyframes
    • Loading GUI, animating / Creating and animating the Loading GUI
    • Loading GUI, creating / Creating and animating the Loading GUI
  • Fader
    • creating / Creating the Fader and using the Animation panel
    • various resolutions, scaling for / Scaling for various resolutions
    • starting, from invisibility / Starting the Fader from invisibility
  • Far Clip Plane setting / Camera Clip Planes and Fog
  • Far Clip Plane settings / Camera Clip Planes and Fog
  • FBXImporter component / Import settings, Targets and coconut collisions, The outpost and generator, The coconut shy
  • Field of View (FOV) / Projection mode—3D versus 2D
  • Find() command
    • about / Find() and FindWithTag()
    • C# / Find() and FindWithTag()
    • JavaScript / Find() and FindWithTag()
    / Find() and FindWithTag()
  • FindWithTag() command
    • about / Find() and FindWithTag()
    / Find() and FindWithTag()
  • fire
    • lighting / Lighting the fire
    • matches, adding / Adding the matches
    • match collection script, writing / Writing the Match Collection script
    • matches GUI, creating / Creating the matches GUI
    • matches, collecting / Collecting the matches
    • , starting / Starting the fire
    • arrays, using for commands / Using arrays and loops for commands on multiple objects
    • loops, using for commands / Using arrays and loops for commands on multiple objects
    • inventory usage, signifying / Signifying Inventory usage
  • fire, campfire particle systems
    • creating / Creating fire
    • ellipsoid particle emitter, settings / Ellipsoid Particle Emitter settings
    • particle animator, settings / Particle Animator settings
    • particle renderer, settings / Particle Renderer settings
    • material, adding / Adding a material
    • FireSystem, positioning / Positioning the FireSystem
    • testing / Time to Test!
  • First Person Controller (parent), FPC object
    • about / Object 1: First Person Controller (parent), TransforFirst Person Controller (parent), FPC objectaboutm
    • transform / TransforFirst Person Controller (parent), FPC objectaboutm
    • character control / Character Controller
    • mouse look (script) / Mouse Look (Script)
    • character motor (script) / Character Motor (Script)
    • FPSInput controller (script) / FPSInput Controller (Script)
  • First Person Controller object / Camera Clip Planes and Fog
  • First Streamed Level setting / Web Player
  • FixedUpdate() function / variable declarationaboutStoring movement information, @Script commands
  • Flare Layer component, main camera (child) / GUmain camera (child), FPC objectCullingMask parameterILayer and Flare Layer
  • float (floating point) / Variable data types
  • floating point (float) / Variables in C#
  • Fog Density value / Camera Clip Planes and Fog
  • for loops
    • parameters / For loops
    • C# / For loops
    • JavaScript / For loops
  • format option / Preparing textures for GUI usage
  • FPC
    • about / Deconstructing the First Person Controller object
    • parent-child relationship / Deconstructing the First Person Controller object
    • parent-child, issues / Parent-child issues, First FPCparent-child, issuesPerson Controller object
  • FPC, object
    • First Person Controller / First FPCparent-child, issuesPerson Controller object
    • graphics / First FPCparent-child, issuesPerson Controller object
    • main camera / First FPCparent-child, issuesPerson Controller object
    • First Person Controller (parent) / Object 1: First Person Controller (parent)
    • graphics (child) / Object 2: Graphics (child)
    • main camera (child) / Object 3: Main Camera (child)
  • FPSInput controller (script), First Person Controller (parent)
    • about / FPSInput Controller (Script)
  • fps variable / Frame rate feedback
  • FramesPerSecond (FPS), / functionsaboutUpdate()
  • free version, Unity / Free versus Pro
  • functions
    • about / Functions , functionsaboutUpdate()
    • Update() function / functionsaboutUpdate()
    • OnMouseDown() function / OnMouseDown()
    • writing / Writing custom functions
    • return type / Return type, functionsreturn typereturn type, functionArguments
    • arguments / functionsreturn typereturn type, functionArguments
    • custom function, declaring / Declaring a custom function, functionscustom function, declaringCalling a custom function
    • custom function, calling / functionscustom function, declaringCalling a custom function, functionscustom function, callingIf else statements
    • if else statements / functionscustom function, callingIf else statements, C#:if else statementsC#

G

  • game
    • performance, optimizing / Optimizing performance
    • building / Building the game
    • web build / Adapting for web build
    • quit button platform automation / Quit button platform automation
    • streaming / Preparing for streaming
    • streamed loading progress, displaying / Displaying streamed loading progress
    • loading info box, styling / Styling the loading info box
    • standalone, building / Building the Standalone
    • unity free version / Free versus Pro
    • unity pro version / Free versus Pro
    • web, building for / Building for the Web
    • web player builds, embedding in site / Embedding web player builds in your own site
    • <head>-web JavaScript / The <head>—web JavaScript
    • <head> code, simplifying / Making the <head> code portable
    • object, embedding from <BODY> / Object embedding from the <BODY>
    • Unity embed, styling with CSS / Styling your Unity embed with CSS
    • Kongregate.com, sharing on / Sharing on Kongregate.com
    • learning, approaches / Approaches to learning, Don't reinvent the wheel
  • Game
    • win sequence / Game win sequence
  • GameObject.Find() / Switching lights and removing the HUD
  • GameObject class / Assigning scripts to objects
  • GameObjects
    • about / GameObjects
  • GameObjects;about / GameObjects
  • GameOver() function / Win sequence approach, Triggering the win
  • GameOver()in function / Triggering the win
  • game title
    • adding / Adding the game title
    • GUI Texture formats / GUITexture formats
    • GUI Texture object, creating / Creating the GUITexture object
  • game view, Unity interface
    • about / The Game view, Summaryunity interfacegame viewgame view, Unity interfaceabout
  • generate colliders / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • generate lightmap UVs / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • generator object / Lighting inside with Baked-Only Point Lights
  • GetButtonDown() command / Instantiate restriction and object tidying
  • GetComponent
    • about / GetComponent
  • GetComponent() / GetComponent
  • GetComponent() command / Moving the character, Instantiating the coconut, Activating coconut throw
  • GetComponent command / Implementing Translate
  • GetStreamProgressForLevel command / Displaying streamed loading progress
  • global illumination / Preparing for lightmapping
  • graphics (child), FPC object
    • about / Object 2: Graphics (child)
    • mesh filter / Mesh filter
    • mesh renderer / Mesh Renderer
  • Graphics Interchange Format (GIF) / GUITexture formats
  • grass, survival island game / Step 6—The grass is always greener
  • grounded variable / Checking grounded
  • grouping / Grouping the environment objects
  • GUILayer component, main camera (child) / GUmain camera (child), FPC objectCullingMask parameterILayer and Flare Layer
  • GUI scripting class / Writing on screen with GUIText
  • guiText.enabled property / Scripting for GUIText control
  • GUI Text component / Hints for the player
  • GUI Texture button script / GUITexture button script
  • GUI Texture component / Displaying the power cell HUD
  • GUI Texture formats
    • about / GUITexture formats
  • GUI Texture object
    • creating / Creating the GUITexture object
  • GUI Textures
    • layering / Layering GUITextures
  • GUI Textures and Mouse Events approach
    • menus, creating with / Creating the menu with GUITextures and mouse events
    • play button, adding / Adding the play button
    • GUI Texture button script / GUITexture button script
    • scenes, loading / Loading scenes
    • public variables, assigning / Assigning public variables
    • button, testing / Testing the button
    • instructions button, adding / Adding the instructions button
    • quit button, adding / Adding the quit button
    • scripts, checking with Debug commands / Checking scripts with Debug commands
  • GUI usage
    • textures, preparing for / Preparing textures for GUI usage

H

  • Hand (Shortcut-Q) tool / Sandy areas
  • Heads Up Display (HUD) elements / Projection mode—3D versus 2D
  • height, character control / Character Controller
  • heightmaps
    • about / Importing and exporting heightmaps
    • resolution / Setting the resolution
  • Hierarchy panel / Camera Clip Planes and Fog
  • hitSound variable / Using co-routines to time game elements
  • HUDon() function / Enabling the HUD during runtime

I

  • icon settings, per-platform settings
    • standalone settings / Standalone
  • if else statements
    • C# / C#:if else statementsC#
    • JavaScript / C#:if else statementsC#
  • IF statement / Firing the projectile
  • if statement / variable declarationaboutStoring movement information
  • IgnoreCollision() code / Using IgnoreCollision() code
  • IgnoreCollision() command / Using IgnoreCollision() code
  • Input button / Firing the projectile
  • Input class / Checking for player input
  • inspector
    • working with / Working with the Inspector
    • layers / Layers
    • and prefabs / Prelayers, inspectoraboutfabs and the Inspector
  • inspector, Unity interface
    • about / The Inspector
  • Inspector panel / Creating the projectile prefab
  • instantiate()
    • using, to spawn objects / Using Instantiate() to spawn objects
    • Rigidbody, force adding to / Adding a force to the Rigidbody, instantiate()Rigidbody, force adding toRigidbody physicsforce, addingSummary
  • Instantiate() / Creating the win object
  • Instantiate() command / Utilizing instantiation
  • instantiation
    • utilizing / Utilizing instantiation
  • instructions button
    • adding / Adding the instructions button
  • int (integer) / Variable data types
  • intege (int) / Variables in C#
  • inter-script communication
    • about / Inter-script communication and Dot Syntax
  • Internet Relay Chat (IRC) channel / Further scripting
  • interpolate, Rigidbody component / The Rigidbody component
  • Inventory script / Creating the power cell script, Adding Trigger Collision Detection, Adding the power generator
  • is kinematic, Rigidbody component / The Rigidbody component
  • island
    • duplicating / Duplicating the island
    • environment objects, grouping / Grouping the environment objects
    • scene, duplicating / Duplicating the scene
    • shot, framing / Framing the shot
  • island, survival island game
    • creating / Creating the island—sun, sea, and sand
    • terrain, setting up / Step 1—Setting up the terrain
    • outline, creating / Step 2—Creating the Island outline
    • volcano, creating / Step 3—Volcano!
    • textures, adding / Step 4—Adding textures
    • procedure, painting / Painting procedure
    • sandy areas / Sandy areas
    • Grass & Rock texture / Grass
    • volcanoes / Volcanoes rock!
    • add tree dialog / Step 5—Tree time
    • tree / Step 5—Tree time
    • grass / Step 6—The grass is always greener
    • lights, types / Step 7—Let there be lights!
    • directional light / Step 7—Let there be lights!
    • point light / Step 7—Let there be lights!
    • spot light / Step 7—Let there be lights!
    • sunlight, creating / Creating sunlight
    • 2D versus 3D sound / Sounds—2D versus 3D
    • audio file formats / Audio file formats
    • books asset package, importing / Importing the book's asset package
    • further audio, settings / Further audio settings
    • skybox / Step 9—Look, there! Up in the skybox!
    • pro water package / Step 10—Open water

J

  • JavaScript behaviour, scripting
    • about / What's inside a new Javascript behaviour
    • JavaScript, variables / Variables in Javascript
    • comments / Comments
  • jumping, character motor (script) / Character Motor (Script)

K

  • Kongregate.com / Sharing on Kongregate.com

L

  • Launcher child object / Creating the Launcher object
  • Launcher object
    • creating / Creating the Launcher object
    / Creating the Launcher object
  • layers, inspector
    • about / Layers, Prelayers, inspectoraboutfabs and the Inspector
  • Lerp
    • about / Game win sequence
    • animating with / Animating with linear interpolation (Lerp)
    • animations, adjusting / Adjusting animations
    • win sequence, storing / Storing the win sequence
  • Level of Detail (LOD) / Terrain Settings
  • lighmapping
    • scene, baking / Baking the scene
  • lightFire() function / Triggering the win
  • LightFire() function / Signifying Inventory usage
  • lighting, prototyping environment
    • adding / scene, prototyping environmentsettingprototyping environmentscene, settingAdding simple lighting, prototyping environmentlighting, addinglighting, prototyping environmentaddingAnother brick in the wall
  • lightmapping
    • about / Lightmapping
    • 3D objects, creating / Lightmapping
    • preparing for / Preparing for lightmapping
    • outpost game object / The outpost and generator
    • outpost, lighting inside / Lighting inside the outpost
    • mesh lighting, self illuminated shader used / Lighting a mesh with a Self Illuminated shader
    • baked-only point lights, used for lighting / Lighting inside with Baked-Only Point Lights
    • coconut shy / The coconut shy
    • campfire / The campfire
    • baking / Baking the lightmap
    • URL / Baking the scene
  • lightmapping, baking
    • ambient lighting / Ambient lighting
    • lights, including / Including lights
    • excluding from / Excluding from the bake
  • lightmapping, sections
    • object / Lightmapping overview
    • bake / Lightmapping overview
    • maps / Lightmapping overview
  • Linear Interpolation method / Game win sequence
  • LoadAnim() function / Storing and instantiating the Loading GUI
  • LoadLevel() function / Loading scenes
  • local position / Parent-child issues
  • local rotation / Parent-child issues
  • local space
    • versus world space / Local space versus world space
  • local variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • and receiving input / Local variables and receiving input
  • lockedSound variable / Scripting for GUIText control
  • log pile
    • adding / Adding the log pile
  • loop / Using arrays and loops for commands on multiple objects
  • Loop field / Setting up the outpost model
  • Lower Terrain tool / Hills, troughs, and texture blending

M

  • main camera (child), FPC object
    • about / Object 3: Main Camera (child)
    • camera / Camera
    • ClearFlags / Camera
    • background color / Camera
    • normalized view port rect / Camera
    • clipping planes (near/far) / Camera
    • Fieldofview / Camera
    • orthographic and orthographic size / Camera
    • depth parameter / Camera
    • CullingMask parameter / Camera, GUmain camera (child), FPC objectCullingMask parameterILayer and Flare Layer
    • GUILayer component / GUmain camera (child), FPC objectCullingMask parameterILayer and Flare Layer
    • Flare Layer component / GUmain camera (child), FPC objectCullingMask parameterILayer and Flare Layer
    • MouseLook(Script) component / Mouse Look (Script)
    • audio listener / Audio listener
  • mass, Rigidbody component / The Rigidbody component
  • master brick, prototyping environment
    • building / Building the master brick
    • snapping / And snap!—It's a row
    • vertex snapping / And snap!—It's a row
  • Match Collection Script
    • writing / Writing the Match Collection script
  • MatchGUI texture file / Creating the matches GUI
  • MatchPickup() function / Collecting the matches
  • materials / Materials, textures, and shaders
  • materials section, modeling application
    • about / Materials
  • max size option / Preparing textures for GUI usage
  • menu, creating
    • with GUI textures and mouse events / Creating the menu with GUITextures and mouse events
    • with Unity GUI class and GUI Skins approach / Creating the menu with the Unity GUI class and GUI skins
  • menuPage variable string / Creating menu pages
  • menus
    • about / Interfaces and menus
  • mesh collider / Collision detection, modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes, Adding colliders
  • meshes / Polygons, edges, vertices, and meshes
  • meshes section, FBX importer
    • about / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • scale factor / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • mesh compression / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • generate colliders / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • swap UVs / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • generate lightmap UVs / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • mesh filter, graphics (child)
    • about / Mesh filter
  • mesh particle emitter
    • about / Particle Emitter
    • settings / Particle Emitter
  • mesh renderer, graphics (child)
    • about / Mesh Renderer
  • mini-game
    • making / Making the mini-game
    • coconut prefab, creating / Creating the coconut prefab
    • textured coconut, creating / Creating the textured coconut
    • physics, adding / Adding physics
    • prefab, saving as / Saving as a prefab
    • launcher object, creating / Creating the Launcher object
    • coconuts, scripting to throw / Scripting to throw coconuts
    • player input, checking for / Checking for player input
    • feedback sound, playing / Playing feedback sound
    • coconut, instantiating / Instantiating the coconut
    • instances, naming / Naming instances
    • velocity, assigning / Assigning velocity
    • velodevelopment safeguards, adding / Adding development safeguards
    • component presence, ensuring / Ensuring component presence
    • collisions, safeguarding / Safeguarding collisions
    • IgnoreCollision() code, using / Using IgnoreCollision() code
    • collisions, ignoring with layers / Ignoring collisions with layers
    • audio source component, including / Including the Audio Source component, Including the Audio Source component
    • object tidying, instantiating / Instantiate restriction and object tidying
    • restriction, instantiating / Instantiate restriction and object tidying
    • coconut throw, activating / Activating coconut throw
    • throwing mat trigger script, writing / Writing the throwing mat trigger script
    • coconut shy shack, adding / Adding the coconut shy shack
    • import, settings / Import settings
    • throwing mat trigger, creating / Creating the throwing mat trigger
    • coconuts, removing / Removing coconuts
    • coconut collisions / Targets and coconut collisions
    • FBXImporter component / Targets and coconut collisions
    • Animations component / Targets and coconut collisions
    • placement / Placement
    • automatic animation, disabling / Disabling automatic animation
    • Rigidbodies, adding to moving parts / Adding Rigidbodies to moving parts
    • coconut collision detection script, writing / Writing the Coconut collision detection script
    • variables, establishing / Establishing variables, Collision detection
    • co-routines, using to time game elements / Using co-routines to time game elements
    • script, assigning / Assigning the script
    • targets, creating / Creating more targets
    • game, winning / Winning the game
    • variables, setting up / Setting up variables
    • win, checking for / Checking for a win
    • script assignment / Script assignment
    • target count, incrementing / Incrementing and decrementing target count
    • target count, decrementing / Incrementing and decrementing target count
    • target count, adding to / Adding to the target count
    • target count, subtracting from / Subtracting from the target count
    • crosshair, adding / Adding the crosshair
    • crosshair GUI Texture, toggling / Toggling the crosshair GUI Texture
    • player, informing / Informing the player
  • MinimumX/MaximumX, mouse look (script) / Mouse Look (Script)
  • MinimumY/MaximumY, mouse look (script) / Mouse Look (Script)
  • MinMoveDistance, character control / Character Controller
  • modeling applications
    • about / External modeling applications
    • models, settings / Common settings for models, modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • meshes section / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
    • normals and tangents / Normals and Tangents
    • split tangents / Normals and Tangents
    • materials section / Materials
    • animations section / Animations, modeling applicationsanimations sectionAnimation Compression
    • animation compression section / modeling applicationsanimations sectionAnimation Compression
  • models, modelling application
    • about / Common settings for models, modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • Monobehaviour class / Scripts
  • mouse look (script), First Person Controller (parent)
    • axes / Mouse Look (Script)
    • SensitivityX/SensitivityY / Mouse Look (Script)
    • MinimumX/MaximumX / Mouse Look (Script)
    • MinimumY/MaximumY / Mouse Look (Script)
  • MouseLook(Script) component, main camera (child) / Mouse Look (Script)
  • Move command / Scripting for character movement
  • moveDirection variable / variable declarationaboutStoring movement information, Checking grounded
  • movement, character motor (script) / Character Motor (Script)
  • moveSpeed variable / Assigning scripts to objects
  • moving platform, character motor (script) / Character Motor (Script)

N

  • Name parameter / Scripting to throw coconuts
  • NewBehaviourScript / What's inside a new C# behaviour
  • normals, modeling application
    • about / Normals and Tangents
  • Null Reference Exception
    • about / Dot Syntax
    • C# / Dot Syntax
    • JavaScript / Dot Syntax
  • Null Reference Exception error / Testing the script

O

  • objects
    • spawning, instantiate() used / Using Instantiate() to spawn objects
  • object space / Local space versus world space
  • OnCollisionEnter() function / Using co-routines to time game elements
  • OnControllerColliderHit() function / Playing animation, Using arrays and loops for commands on multiple objects
  • OnGUI() button / Scripting button actions
  • OnGUI() function / The OnGUI() function, Resolution-independent positioning, Quit button platform automation
  • OnMouseDown() function / OnMouseDown()
  • OnMouseUp() function / GUITexture button script
  • OnTriggerEnter() function / Scripting for trigger collisions, Creating the power cell script, Adding Trigger Collision Detection, Restricting door access with a cell counter, Disabling the HUD for game start, Switching lights and removing the HUD, Activating coconut throw, Toggling the crosshair GUI Texture
  • OnTriggerExit() function / Activating coconut throw, Toggling the crosshair GUI Texture
  • OpenDoor / Working with OnControllerColliderHit
  • OpenDoor() custom function, collision detection
    • about / OpenDoor() custom function
    • declaring / Declaring the function
    • door status, checking / Checking door status
    • audio, playing / Playing audio
    • script, testing / Testing the script
  • OpenDoor() function / Checking door status, Code maintainability
  • OTF (OpenType font) / Using fonts
  • outpost, opening
    • about / Opening the outpost
    • collision detection / Approach 1—Collision detection, Creatioutpost, openingcollision detectionng new assets
    • ray casting / Approach 2—Ray casting
    • trigger collision detection / Approach 3—Trigger collision detection
  • outpost access
    • restricting / Restricting outpost access
    • door access, restricting with cell counter / Restricting door access with a cell counter
  • outpost game object / The outpost and generator
  • outpost model
    • setting up / Setting up the outpost model
    • adding / Adding the outpost
    • positioning / Positioning, Rotoutpost modelpositioningation
    • rotation / Rotoutpost modelpositioningation
    • colliders, adding / Adding colliders, Addinoutpost modelcolliders, addingg the Rigidbody
    • Rigidbody, adding / Addinoutpost modelcolliders, addingg the Rigidbody
    • audio, adding / Adding audio
    • automatic animation, disabling / Disabling automatic animation
  • outPost object / Scattering power cells, Preparing for lightmapping

P

  • paint details tool / Paint Details
  • paint height tool / Paint height
  • Paint Height tool / Positioning, Keep on the right path
  • paint texture tool / Paint Texture
  • Paint Texture tool / Hills, troughs, and texture blending
  • parent-child relationship / Deconstructing the First Person Controller object
  • parent-child relationships
    • about / Local space versus world space
    / Local space versus world space
  • particle animator
    • about / Particle Animator
  • particle emitter
    • about / Particle Emitter
    • ellipsoid particle emitter / Particle Emitter
    • mesh particle emitter / Particle Emitter
    • settings / Particle Emitter
  • particle renderer
    • about / Particle Renderer
  • particle system
    • about / What is a particle system?
    • particle emitter / What is a particle system?
    • particle animator / What is a particle system?
    • particle renderer / What is a particle system?
    • task, creating / Creating the task
    • assets / Assets involved
    • log pile, adding / Adding the log pile
    • campfire particle systems, creating / Creating the campfire particle systems
    • positioning / Positioning the particle system
    • ellipsoid emitter, settings / Ellipsoid Particle Emitter settings particle systemellipsoid emitter, settings
    • particle animator, settings / Particle Animator settingsparticle systemparticle animator, settings
    • URL / Particle Animator settingsparticle systemparticle animator, settings
  • per-platform settings, player settings
    • resolution and presentation settings / Resolution and Presentation
    • icon setting / Icon
    • splash image setting / Splash Image
    • other settings / Other Settings
    • web player settings / Web Player
    • standalone settings / Standalone
  • Per Material / Materials
  • Per Texture / Materials
  • physics
    • adding / Adding physics
  • Physics.Raycast() function / Casting the ray
  • pixelInset property / Scaling for various resolutions
  • pixel light count / Quality Settings
  • Place Trees button / Positioning trees
  • place trees tool / Place Trees
  • platform / Quit button platform automation
  • platform property / Quit button platform automation
  • Play Automatically checkbox / Disabling automatic animation
  • Play button / Extending colliders
  • PlayClipAtPoint() command / Creating the win object
  • player
    • hints / Hints for the player
    • on screen with GUI Text, writing / Writing on screen with GUIText
    • GUI Text control, scripting / Scripting for GUIText control
    • hints, adding / Adjusting hints to show progress
    • fonts, using / Using fonts
    • positioning / Positioning the player
  • Player Collisions (script) component / Testing the script
  • PlayerCollisions, ray casting
    • about / Tidying PlayerCollisions
    • C# / Tidying PlayerCollisions
    • JavaScript / Tidying PlayerCollisions
  • PlayerCollisions, trigger collision detection
    • removing / Removing PlayerCollisionstrigger collision detectiontrigger collisions, scriptingtrigger collision detectiontrigger collisions, scriptingtrigger collisions, trigger collision detectionscripting for
  • PlayerCollisions script / Disabling collision detection with comments
  • player input settings
    • about / Player Input settings
  • player inventory
    • writing / Writing the Player Inventory
    • charge value, saving / Saving the charge value
    • variable start value, setting / Setting the variable start value
    • audio feedback / Audio feedback
    • CellPickup() function, adding / Adding the CellPickup() function
    • inventory, adding to player / Adding the Inventory to the player
  • player settings
    • about / Player Settings
    • cross-platform settings / Cross-Platform Settings
    • per-platform settings / Per-Platform Settings
  • PlayOneShot / Playing audio
  • PlayOneShot command / Playing audio
  • PNG (Portable Network Graphics ) format / Displaying the power cell HUD
  • point light / Step 7—Let there be lights!
  • Point Light object / Lighting inside with Baked-Only Point Lights
  • polygon count / Polygons, edges, vertices, and meshes
  • polygons / Polygons, edges, vertices, and meshes
  • Portable Network Graphics (PNG) / GUITexture formats
  • Position.y property / Creating and animating the Loading GUI
  • Positive parameter / Scripting to throw coconuts
  • powerCell / Making the mini-game
  • power cell HUD
    • displaying / Displaying the power cell HUD
    • GUI textures, import settings / Import settings for GUI textures
    • GUI Texture object, creating / Creating the GUITexture object
    • power GUI texture, positioning / Positioning the PowerGUI texture
    • texture swap, scripting for / Scripting for texture swap
  • powerCell object / Tagging the power cell
  • power cell prefab
    • creating / Creating the power cell prefab
    • puzzle, creating / Downloading, importing, and placing
    • tagging / Tagging the power cell
    • collider, scaling / Collider scaling and rotation
    • collider, rotating / Collider scaling and rotation
    • enlarging / Enlarging the power cell
    • trigger collider, adding / Adding a trigger collider
    • collider scale / Collider scale
    • Rigidbody, adding / Adding the Rigidbody
    • power cell script, creating / Creating the power cell script
    • rotation, adding / Adding rotation
    • trigger collision detection, adding / Adding Trigger Collision Detection
    • prefab, saving / Saving as a prefab
    • power cells, scattering / Scattering power cells
  • power cells
    • scattering / Scattering power cells
  • power cell script, creating / Creating the power cell script
  • power variable / Wall attack
  • prefab / Saving as a prefab
  • prefab, saving / Saving as a prefab
  • prefab instance / Utilizing instantiation
  • prefabs
    • about / scriptsaboutUnity conceptsscriptsPrefabs
    • storing with / Storing with prefabs
  • prefabs, inspector
    • about / Prelayers, inspectoraboutfabs and the Inspector, Anatprefabs, inspectoraboutomy of a character
  • primitive collider / Collision detection, Adding colliders
  • private variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • versus public variables / Public versus private variables
    • declaring / Declaring public and private variables
  • projectile
    • creating / Making a projectile
    • prefab, creating / Creating the projectile prefab
    • material, creating / Creating and applying a material
    • applying, creating / Creating and applying a material
    • physics, adding with Rigidbody / Adding physics with a Rigidbody
    • firing / Firing the projectile
  • project window, Unity interface
    • about / The Project window
  • Project Wizard / Your first Unity project
  • prototyping environment
    • about / A basic prototyping environment
    • scene, setting / Setting the scene, scene, prototyping environmentsettingprototyping environmentscene, settingAdding simple lighting
    • lighting, adding / scene, prototyping environmentsettingprototyping environmentscene, settingAdding simple lighting, prototyping environmentlighting, addinglighting, prototyping environmentaddingAnother brick in the wall
    • master brick, building / Building the master brick
    • empty objects, duplicating / Grouping and duplicating with empty objects
    • empty objects, grouping / Grouping and duplicating with empty objects
    • viewpoint, setting / Setting the viewpoint
  • pro version, Unity / Free versus Pro
  • pro water package, survival island game
    • about / Step 10—Open water
  • public testing
    • frame rate feedback / Frame rate feedback
    • performance, optimizing / Optimizing performance
  • public testing;about / Public testing
  • public variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • declaring / Declaring public variables, Declaring public and private variables
    • C# / Declaring public variables
    • Javascript / Declaring public variables
    • scripts, assigning to objects / Assigning scripts to objects
    • camera, moving / scriptingscripts, adding to objectsMoving the camera, scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • versus private variables / Public versus private variables
    • assigning / Assigning public variables
    • creating / Creating public variables

Q

  • quality settings
    • about / Quality Settings
  • Quit() command / Scripting button actions
  • quit button
    • adding / Adding the quit button

R

  • radius, character control / Character Controller
  • raise height tool / Raise height
  • Raise Height tool / Step 2—Creating the Island outline
  • Raise tool / Hills, troughs, and texture blending
  • ray casting
    • about / Collisions and triggers, Raytriggersabout casting, Approach 2—Ray casting, Casting the ray
    • frame miss / The frame miss
    • predictive collision detection / Predictive collision detection
    • collision detection, disabling with comments / Disabling collision detection with comments
    • Door Manager script, writing / Migrating code—writing a DoorManager script
    • PlayerCollisions / Tidying PlayerCollisions
    • collider, resetting / Resetting the collider
  • raycasting / Layers
  • Rect property / Creating the menu
  • Reload() function / Win sequence approach
  • removeTime float variable / Removing coconuts
  • Renamer() function / GetComponent
  • RequireComponent() command / Pixel-specific positioning
  • RequireComponent() function / @Script commands
  • RequireComponent command / Including the Audio Source component
  • resolution and presentation settings, per-platform settings
    • web player settings / Web Player Settings
    • standalone settings / Standalone Settings
  • return type, function / Return type, functionsreturn typereturn type, functionArguments
  • Rigidbodies
    • about / Rigidbodies
    • forces / Forces
    • component / The Rigidbody component
    • adding, to moving parts / Adding Rigidbodies to moving parts
  • Rigidbodies component
    • mass / The Rigidbody component
    • drag / The Rigidbody component
    • angular drag / The Rigidbody component
    • use gravity / The Rigidbody component
    • is kematic / The Rigidbody component
    • interpolate/extrapolate / The Rigidbody component
    • constraints / The Rigidbody component
  • Rigidbody, adding / Adding the Rigidbody
  • Rigidbody, outpost model
    • adding / Addinoutpost modelcolliders, addingg the Rigidbody
  • Rigidbody class / Assigning scripts to objects
  • Rigidbody object / Assigning scripts to objects
  • Rigidbody physics
    • force, adding / Adding a force to the Rigidbody, instantiate()Rigidbody, force adding toRigidbody physicsforce, addingSummary
  • RigidbodyRigidbody dynamics system / Rigidbody physics
  • RigidBodyRigidbody physics
    • about / Rigidbody physics
    • RigidbodyRigidbody dynamics system / Rigidbody physics
    • collision, detecting / Collision detection
  • Rotate() command / Adding rotation
  • rotate tool[E] / Control toolsUnity interfacescene view
  • rotation, adding / Adding rotation
  • rotationAmount / Adding rotation
  • rotationSpeed variable / Adding rotation

S

  • @script command / @Script commands
  • scale factor / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • scale tool [R] / Control toolsUnity interfacescene view
  • scene
    • creating / Creating the scene
    • duplicating / Duplicating the scene
  • scene, prototyping environment
    • setting / Setting the scene, scene, prototyping environmentsettingprototyping environmentscene, settingAdding simple lighting
  • scenes;about / Scenes
  • scene view
    • control tools / Control toolsUnity interfacescene view
  • scene view, Unity interface
    • moving through / Flythrough Scene navigation
    • control bar / Control bar
    • search box / Search box
    • create button / Create button
  • Scene window / Adding colliders
  • Screen.width / Resolution-independent positioning
  • Screen class / Positioning
  • scripting
    • about / Introducing scripting
    • script class / A new behaviour script or 'class'
    • C# behaviour / What's inside a new C# behaviour, Basic fscriptingC# behaviourunctions
    • C# behaviour, basic functions / Basic fscriptingC# behaviourunctions
    • JavaScript behaviour / What's inside a new Javascript behaviour
    • wall attack / Wall attack
    • public variables, declaring / Declaring public variables
    • scripts, adding to objects / Assigning scripts to objects, scriptingscripts, adding to objectsMoving the camera
    • camera, moving / scriptingscripts, adding to objectsMoving the camera, scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • local variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • private variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • public variables / scriptingcamera, movingpublic variablescamera, movingLocal, private, and public variables
    • local variables, in C# / Local variables and receiving input
    • local variables, in javaScript / Local variables and receiving input
  • scripts
    • about / Scripts, scriptsaboutUnity conceptsscriptsPrefabs
  • script testing, collision detection
    • about / Testing the script
    • colliders, extending / Extending colliders
    • animation, playing / Playing animation
    • procedure, reversing / Reversing the procedure
    • code, maintainability / Code maintainability
    • collision detection, drawbacks / Drawbacks of collision detection
  • search box, scene view
    • about / Search box
  • self illuminated shader
    • about / Preparing for lightmapping
  • SendMessage
    • about / SendMessage
  • SendMessage() / Adding the CellPickup() function
  • SendMessage() command / SendMessage
  • SendMessage() function / Casting the ray, Scripting for GUIText control, Collecting the matches
  • SensitivityX/SensitivityY, mouse look (script) / Mouse Look (Script)
  • Set button / Your first Unity project
  • shader / Materials, textures, and shaders
  • shadow distance / Quality Settings
  • shadow resolution / Quality Settings
  • shadows / Quality Settings
  • ShowHint() function / Informing the player
  • ShutDoor() / Reversing the procedure
  • ShutDoor() function / Reversing the procedure
  • ShutDoor(currentDoor) function / Code maintainability
  • SkinWidth, character control / Character Controller
  • skybox, survival island game
    • about / Step 9—Look, there! Up in the skybox!
    • applying / Step 9—Look, there! Up in the skybox!
  • sliding, character motor (script) / Character Motor (Script)
  • SlopeLimit, character control / Character Controller
  • smoke, campfire particle systems
    • blowing / Blowing smoke!
    • ellipsoid particle emitter, settings / Ellipsoid Particle Emitter settings
    • particle animator, settings / Particle Animator settings
    • particle renderer, settings / Particle Renderer settings
    • positioning / Positioning
  • smooth height tool / Smooth Height
  • Smooth Height tool / Step 2—Creating the Island outline
  • Smooth Height tool / Life's a beach, Keep on the right path
  • snapping / And snap!—It's a row
  • soft vegetation / Quality Settings
  • sound, survival island game
    • about / Step 8—What's that sound?
    • 2D versus 3D / Sounds—2D versus 3D
    • audio file formats / Audio file formats
    • books asset package, importing / Importing the book's asset package
    • audio settings / Further audio settings
  • SpawnEnemy() function / functionscustom function, declaringCalling a custom function
  • SpawnEnemy function / SendMessage
  • spawning
    • about / Utilizing instantiation
  • spawnTrans argument / functionscustom function, declaringCalling a custom function
  • speed variable / variable declarationaboutStoring movement information, Animating with linear interpolation (Lerp)
  • sphere collider / Collision detection
  • splash image settings, per-platform settings
    • standalone settings / Standalone
  • Splatmap / Setting the resolution
  • spot light / Step 7—Let there be lights!
  • Start() command / Removing coconuts
  • Start() function / Basic fscriptingC# behaviourunctions, Declaring public variables, Find() and FindWithTag(), Working with OnControllerColliderHit, Setting the variable start value, Removing coconuts, Resolution-independent positioning, Scaling for various resolutions
  • static (global) functions / Further scripting
  • StepOffset, character control / Character Controller
  • store in nodes method / Animations
  • store in original roots method / Animations
  • store in root method / Animations
  • String (js) / string (c#) / Variable data types
  • sunlight, survival island game
    • creating / Creating sunlight
  • survival island game
    • designing / Designing the game
    • terrain editor, using / Using the terrain editor
    • terrain menu, features / Terrain menu features
    • heightmaps, importing / Importing and exporting heightmaps
    • heightmaps, exporting / Importing and exporting heightmaps
    • resolution, setting / Setting the resolution
    • place trees / Mass place trees
    • heightmap, falttening / Flatten Heightmap
    • refresh tree and detail prototypes / Refresh tree and detail prototypes
    • terrain toolset / The terrain toolset
    • terrain script tool / Terrain Script
    • raise height tool / Raise height
    • paint height tool / Paint height
    • smooth height tool / Smooth Height
    • paint texture tool / Paint Texture
    • place trees tool / Place Trees
    • paint details tool / Paint Details
    • terrain settings tool / Terrain Settings
  • swap UVs / modeling applicationsmodels, settingsmodels, modelling applicationaboutMeshes
  • sync to VBL / Quality Settings

T

  • Tag drop-down menu / Tags
  • Tag Manager / Tags
  • tags
    • about / Tags
    • list / Tags
  • tags, inspector
    • about / Tags
    • Tag Manager / Tags
  • tangents, modeling application
    • about / Normals and Tangents
  • target count
    • incrementing / Incrementing and decrementing target count
    • decrementing / Incrementing and decrementing target count
    • adding to / Adding to the target count
    • subtracting from / Subtracting from the target count
  • targetRoot / Establishing variables
  • targetRoot private variable / Establishing variables
  • targets
    • creating / Creating more targets
  • targets variable / Checking for a win
  • terrain
    • trees, positioning / Positioning trees
    • hill and troughs, adding / Hills, troughs, and texture blending
    • player path / Keep on the right path
  • Terrain (Script) component / Terrain Script, Positioning trees
  • terrain, island demo project
    • outline / Step 2—Creating the Island outline
  • terrain, survival island game
    • setting up / Step 1—Setting up the terrain
  • Terrain Assets package / Step 5—Tree time, Step 6—The grass is always greener
  • terrain editor
    • terrain menu, features / Terrain menu features
    • terrain, toolset / The terrain toolset
    • island, creating / Creating the island—sun, sea, and sand
  • Terrain Height / Setting the resolution
  • Terrain Length / Setting the resolution
  • terrain menu, features
    • about / Terrain menu features
    • heightmaps, importing / Importing and exporting heightmaps
    • heightmaps, exporting / Importing and exporting heightmaps
    • resolution, setting / Setting the resolution
    • place trees / Mass place trees
    • heightmap, flattening / Flatten Heightmap
    • refresh tree and detail prototypes / Refresh tree and detail prototypes
  • Terrain object / Positioning trees
  • terrain script tool / Terrain Script
  • terrain settings tool / Terrain Settings
  • terrain toolset, survival island game
    • about / The terrain toolset
    • terrain script tool / Terrain Script
    • raise height tool / Raise height
    • paint height tool / Paint height
    • smooth height tool / Smooth Height
    • paint texture tool / Paint Texture
    • place trees tool / Place Trees
    • paint details tool / Paint Details
    • terrain settings tool / Terrain Settings
  • Terrain Width / Setting the resolution
  • testing
    • public testing / Public testing
  • TextHints script / Scripting for GUIText control
  • textured coconut
    • creating / Creating the textured coconut
  • texture quality / Quality Settings
  • textures / Materials, textures, and shaders
    • for menu creation / Interfaces and menus
    • preparing, for GUI usage / Preparing textures for GUI usage
    • using, for GUI button backgrounds / Using textures for GUI button backgrounds
  • textures, survival island game
    • adding / Step 4—Adding textures
    • painting, procedure / Painting procedure
    • sandy areas / Sandy areas
    • grass and rock texture / Grass
    • volcanoes rock / Volcanoes rock!
  • theObject argument / Collision detection
  • throwing mat trigger script
    • writing / Writing the throwing mat trigger script
    • creating / Creating the throwing mat trigger
  • Time.deltaTime / Reversing the procedure, Adding rotation
  • Trail Renderer component / Trail Renderer component
  • Transform (Shortcut-W) tool / Sandy areas
  • transform, First Person Controller (parent)
    • about / TransforFirst Person Controller (parent), FPC objectaboutm
  • transform.FindChild() command / Scripting for trigger collisions
  • transform.position / Adding the CellPickup() function
  • Transform component / scene, prototyping environmentsettingprototyping environmentscene, settingAdding simple lighting, Rotoutpost modelpositioningation, Lighting inside with Baked-Only Point Lights
  • TransformDirection command / Adding a force to the Rigidbody, variable declarationaboutStoring movement information
  • transformDirection command / Assigning velocity
  • Transform tool / Positioning
  • translate
    • about / Understanding Translate
    • implementing / Implementing Translate
    • script check / Tetranslatescript checksting the game so far
  • Translate tool (W) / And snap!—It's a row, Creating the projectile prefab, Adding the outpost, Downloading, importing, and placing, Positioning the player
  • translate tool [W] / Control toolsUnity interfacescene view
  • tree, survival island game / Step 5—Tree time
  • Tree Density / Place Trees
  • trees
    • positioning / Positioning trees
  • Tree Width/Height / Place Trees
  • Tree Width/Height Variation / Place Trees
  • trigger collider, adding / Adding a trigger collider
  • trigger collision detection
    • about / Approach 3—Trigger collision detection
    • trigger zone, creating / Creating and scaling the trigger zone
    • trigger zone, scaling / Creating and scaling the trigger zone
    • trigger collisions, scripting / Scripting for trigger collisions, Removing PlayerCollisionstrigger collision detectiontrigger collisions, scriptingtrigger collision detectiontrigger collisions, scriptingtrigger collisions, trigger collision detectionscripting for
    • PlayerCollisions script, removing / Removing PlayerCollisionstrigger collision detectiontrigger collisions, scriptingtrigger collision detectiontrigger collisions, scriptingtrigger collisions, trigger collision detectionscripting for
  • trigger collision detection, adding / Adding Trigger Collision Detection
  • trigger collisions, trigger collision detection
    • scripting for / Scripting for trigger collisions, Removing PlayerCollisionstrigger collision detectiontrigger collisions, scriptingtrigger collision detectiontrigger collisions, scriptingtrigger collisions, trigger collision detectionscripting for
  • trigger mode / Collisions and triggers
  • triggers
    • about / Collisions and triggers, Raytriggersabout casting
  • TriggerZone / Scripting for trigger collisions
  • trigger zone, trigger collision detection
    • creating / Creating and scaling the trigger zone
    • scaling / Creating and scaling the trigger zone
  • TriggerZone script / Scripting for GUIText control
  • true argument / Code maintainability
  • TTF (TrueType font) / Using fonts
  • Tweening / Creating keyframes

U

  • Unity concepts
    • about / Essential Unity concepts
    • Unity way, example / The Unity way—an example
    • assets / Assets
    • scenes / Scenes
    • GameObjects / GameObjects
    • components / Components
    • scripts / Scripts, scriptsaboutUnity conceptsscriptsPrefabs
    • prefabs / scriptsaboutUnity conceptsscriptsPrefabs
  • Unity GUI class and GUI Skins approach
    • game objects, disabling / Disabling game objects
    • menu, creating / Creating the menu
    • public variables, creating / Creating public variables
    • OnGUI() function / The OnGUI() function
    • GUIs, positioning / Positioning for GUIs
    • pixel-specific positioning / Pixel-specific positioning
    • GUI buttons, styling / Styling GUI buttons with a GUI skin
    • textures, using for GUI button backgrounds / Using textures for GUI button backgrounds
    • font size, selecting for GUI buttons / Choosing font size for GUI buttons
    • resolution-independent positioning / Resolution-independent positioning
    • button actions, scripting / Scripting button actions
    • instructions page, adding / Adding the Instructions page
    • menu pages, creating / Creating menu pages
  • unity interface
    • game view / Summaryunity interfacegame viewgame view, Unity interfaceabout
  • Unity interface
    • about / The interface
    • hierarchy / The Scene view and Hierarchy
    • scene view / The Scene view and Hierarchy, Control toolsUnity interfacescene view
    • control tools / Control toolsUnity interfacescene view
    • inspector / The Inspector
    • project window / The Project window
    • game view / The Game view
  • Unity project
    • about / Your first Unity project
  • Unity way
    • example / The Unity way—an example
  • Unity web player
    • URL, for downloading / Web Player
  • Update() function
    • about / functionsaboutUpdate()
    • C# / functionsaboutUpdate()
    • JavaScript / functionsaboutUpdate()
    / variable declarationaboutStoring movement information, Working with OnControllerColliderHit, Reversing the procedure, Casting the ray, Adding rotation, Scripting for GUIText control, Playing feedback sound, Instantiating the coconut, Activating coconut throw, Removing coconuts, Using co-routines to time game elements, Frame rate feedback
  • use fixed update, character motor (script) / Character Motor (Script)
  • use gravity, Rigidbody component / The Rigidbody component

V

  • variable, data types
    • float (floating point) / Variable data types
    • String (js) / string (c#) / Variable data types
    • int (integer) / Variable data types
    • boolean (js) / bool (c#) / Variable data types
    • Vector3 / Variable data types
  • variable declaration
    • about / Variable declaration, variable declarationaboutStoring movement information
    • movement information, storing / variable declarationaboutStoring movement information
    • character, moving / Moving the character
    • @Script commands / @Script commands
  • variables
    • about / Variables
    • data types / Variable data types
    • using / Using variables
    • public versus private variables / Public versus private variables
    • private variables, declaring / Declaring public and private variables
    • public variables, declaring / Declaring public and private variables
    • establishing / Establishing variables
    • targetRoot private variable / Establishing variables
    • setting up / Setting up variables
  • Vector3 / Variable data types
  • vertex snapping / And snap!—It's a row
  • viewpoint, prototyping environment
    • setting / Setting the viewpoint
  • volcano
    • about / Volcano!
    • smoke material, creating / Making the smoke material
    • audio, adding / Adding audio to the volcano
    • testing / Volcano testing
  • volcano, survival island game
    • about / Step 3—Volcano!
  • Volcano Smoke object / Positioning the particle system

W

  • wall attack, scripting / Wall attack
  • Water (basic) assets package / Step 10—Open water
  • web player builds
    • <head>-web JavaScript / The <head>—web JavaScript
    • <head> code, simplifying / Making the <head> code portable
  • web player plugin
    • about / Web Player
  • web player streamed / Web Player Streamed
  • widgets / OSX Dashboard Widget
  • Win Object
    • creating / Creating the win object
  • win sequence
    • stages / Game win sequence
    • Lerp method / Game win sequence
    • about / Game win sequence
    • approach / Win sequence approach
    • win, trigerring / Triggering the win
    • win messages, creating / Creating the game win messages
    • creating / Creating the game win messages, Grouping GUITextures for optimized instantiation
    • GUI elements, positioning / Positioning win sequence GUI elements
    • GUI Textures, grouping for optimized instantiation / Grouping GUITextures for optimized instantiation
    • Lerp, animating with / Animating with linear interpolation (Lerp)
    • Win Object, creating / Creating the win object
    • animation panel, using / Creating the Fader and using the Animation panel
    • Fader, creating / Creating the Fader and using the Animation panel
    • loading / Loading the win sequence
    • GUI Textures, layering / Layering GUITextures
    • example / Challenge—fading in the Island scene
  • win_message / Creating the game win messages
  • win_survival / Creating the game win messages
  • win_youWin / Creating the game win messages
  • world space
    • versus local space / Local space versus world space

Y

  • yield command / Creating the win object

Z

  • Z-axis / Coordinates
  • Z Position / Layering GUITextures
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image