Manual
Scripting API
unity3d.com
Version:
2019.2
Versions with this page:
6000.2
6000.1
6000.0
2023.2
2023.1
2022.3
2022.2
2022.1
2021.3
2021.2
2021.1
2020.3
2020.2
2020.1
2019.4
2019.3
2019.1
2018.4
2018.3
2018.2
2018.1
2017.4
2017.3
2017.2
2017.1
5.6
5.5
5.4
5.3
5.2
Versions without this page:
Supported
Legacy
Language :
English
English
日本語
Español
한국어
Русский
Unity Manual
Version: 2019.2
Select a different version
6000.2 - Supported
6000.1 - Supported
6000.0 - Supported
2023.2 - Not supported
2023.1 - Not supported
2022.3 - Supported
2022.2 - Not supported
2022.1 - Not supported
2021.3 - Supported
2021.2 - Not supported
2021.1 - Not supported
2020.3 - Not supported
2020.2 - Not supported
2020.1 - Not supported
2019.4 - Not supported
2019.3 - Not supported
2019.1 - Not supported
2018.4 - Not supported
2018.3 - Not supported
2018.2 - Not supported
2018.1 - Not supported
2017.4 - Not supported
2017.3 - Not supported
2017.2 - Not supported
2017.1 - Not supported
5.6 - Not supported
5.5 - Not supported
5.4 - Not supported
5.3 - Not supported
5.2 - Not supported
Language :
English
English
日本語
Español
한국어
Русский
Unity User Manual (2019.2)
Documentation versions
Switching between Unity versions in the documentation
Offline documentation
Packages
Verified packages
Advertisement
Alembic
Analytics Library
In App Purchasing
Lightweight RP
Post Processing
Test Framework
Preview packages
2D Animation
2D IK
2D Pixel Perfect
2D PSD Importer
Adaptive Performance
Adaptive Performance Samsung Android
Addressables
AI Planner
Android Logcat
Animation Rigging
AR Foundation
ARCore XR Plugin
ARKit Face Tracking
ARKit XR Plugin
Asset Bundle Browser
Asset Graph
Barracuda
Build Report Inspector
Burst
Cinemachine
Collections
DOTS Android Platform
DOTS Editor
DOTS Linux Platform
DOTS macOS Platform
DOTS Platforms
DOTS Web Platform
DOTS Windows Platform
Editor Coroutines
Entities
FBX Exporter
Film and TV Toolbox
Game Foundation
Google Resonance Audio
Google VR Android
Google VR iOS
Havok Physics
High Definition RP
Hybrid Renderer
Immediate Window
Input System
Jobs
Mathematics
Memory Profiler
Mobile Notifications
Multiplayer HLAPI
Oculus Android
Oculus Desktop
OpenVR (Desktop)
Package Validation Suite
Performance testing API
PlayableGraph Visualizer
Polybrush
ProBuilder
Profile Analyzer
ProGrids
Quick Search
Remote Config
Scriptable Build Pipeline
Share WebGL Game
Streaming Image Sequence
Terrain Tools
TextMesh Pro
UI Builder
Unity AOV Recorder
Unity Distribution Portal
Unity Physics
Unity Recorder
Unity Reflect
Unity Render Streaming
Unity User Reporting
USD
Vector Graphics
Visual Effect Graph
Vuforia Engine AR
WebRTC
Windows Mixed Reality
Windows XR Plugin
Xiaomi SDK
XR Interaction Toolkit
XR Legacy Input Helpers
XR Management
Built-in packages
2D Sprite
2D Tilemap Editor
AI
Android JNI
Animation
Asset Bundle
Audio
Cloth
Director
Image Conversion
IMGUI
JSONSerialize
Particle System
Physics
Physics 2D
Screen Capture
Terrain
Terrain Physics
Tilemap
UI
UIElements
Umbra
Unity Analytics
Unity Timeline
Unity UI
Unity Web Request
Unity Web Request Asset Bundle
Unity Web Request Audio
Unity Web Request Texture
Unity Web Request WWW
Vehicles
Video
VR
Wind
XR
Packages by keywords
Working with the Package Manager
Unity's Package Manager
Concepts
Global Cache
Package Manager window
List view
Details view
Finding packages
Filter for scope
Search box
Adding and removing packages
Installing from the registry
Installing a local package
Removing an installed package
Disabling a built-in package
Switching to another package version
Finding package documentation
Inspecting packages
Package Manifest window
Scripting API for packages
Accessing package Assets
Project manifest
Dependencies
Embedded dependencies
Local paths
Git URLs
Scoped package registries
Package conflicts
Automatic conflict resolution
Overriding Unity's conflict resolution
Troubleshooting
Network issues
Creating custom packages
Naming your package
Package layout
Adding tests to a package
Package manifest
Versioning
Assembly definition and packages
Meeting legal requirements
Sharing your package
Working in Unity
Installing Unity
System requirements for Unity 2019.2
Unity Hub
Installing the Unity Hub
Adding modules to the Unity Editor
Installing Unity from the command line
Installing Unity offline without the Hub
Unity Hub advanced deployment considerations
Licenses and Activation
Online activation
Offline / Manual Activation
Managing your License
Activation FAQ
Getting Started
Starting Unity for the first time
The Learn tab
Opening existing Projects
2D or 3D projects
Project Templates
Learning the interface
Asset Workflow
Common types of Assets
Asset packages
Using the Asset Store
The Main Windows
The Project window
The Scene view
Scene view navigation
Positioning GameObjects
Using custom Editor tools
Scene Visibility
Scene view control bar
Scene view Camera
Gizmos menu
The Game view
The Hierarchy window
The Inspector window
Assigning icons
Editing Properties
Swatch libraries
Inspector Options
The Toolbar
Searching
Other windows
Customizing Your Workspace
Unity Shortcuts
Creating Gameplay
Scenes
GameObjects
GameObject
Introduction to components
Using Components
Primitive and placeholder objects
Transform
Creating components with scripting
Deactivating GameObjects
Tags
Static GameObjects
Saving your work
Prefabs
Creating Prefabs
Editing a Prefab in Prefab Mode
Instance overrides
Editing a Prefab via its instances
Nested Prefabs
Prefab Variants
Overrides at multiple levels
Unpacking Prefab instances
Instantiating Prefabs at run time
Input
Conventional Game Input
Mobile device input
Mobile Keyboard
Transforms
Constraints
Aim Constraints
Look At Constraints
Parent Constraints
Position Constraints
Rotation Constraints
Scale Constraints
Rotation and Orientation in Unity
Lights
Cameras
Adding Random Gameplay Elements
Cross-Platform Considerations
Publishing Builds
Troubleshooting
Editor Features
2D and 3D mode settings
Preferences
Presets
Shortcuts Manager
Build Settings
Project Settings
Audio
Editor
Graphics
Input Manager
Physics
Physics 2D
Player
Splash Screen
Preset Manager
Quality
Script Execution Order settings
Tags and Layers
Time
Visual Studio C# integration
RenderDoc Integration
Xcode Frame Debugger integration
Editor Analytics
Check For Updates
IME in Unity
Special folder names
Reusing Assets between Projects
Version Control
Version control integration
Perforce Integration
Plastic SCM Integration
Using external version control systems with Unity
Smart Merge
Troubleshooting The Editor
Advanced Development
Profiler overview
Getting started with the Profiler window
Profiling your application
CPU Usage Profiler module
Rendering Profiler
Memory Profiler module
Audio Profiler
Physics Profiler
GPU Profiler
Global Illumination Profiler
UI Profiler
Multi-Scene editing
Loading Resources at Runtime
Plug-ins
Plugin Inspector
Managed plug-ins
Native plug-ins
Building plug-ins for desktop platforms
Low-level native plug-in interface
Low-level native plug-in Profiler API
Low-level native plug-in rendering extensions
Low-level native plug-in Shader compiler access
AssetBundles
AssetBundle Workflow
Preparing Assets for AssetBundles
Building AssetBundles
AssetBundle Dependencies
Using AssetBundles Natively
AssetBundle Manager
Patching with AssetBundles
Troubleshooting
Unity Asset Bundle Browser tool
Reducing the file size of your build
Social API
JSON Serialization
Streaming Assets
ScriptableObject
Advanced Editor Topics
Build Player Pipeline
Command line arguments
Batch mode and built-in coroutine compatibility
Applying defaults to assets by folder
Support for custom Menu Item and Editor features
Asynchronous Shader compilation
Behind the Scenes
AssetDatabase
Text-Based Scene Files
Description of the Format
An Example of a YAML Scene File
YAML Class ID Reference
Cache Server
Modifying Source Assets Through Scripting
Extending the Editor
Editor Windows
Property Drawers
Custom Editors
TreeView
Running Editor Script Code on Launch
Upgrade Guides
Using the Automatic API Updater
Upgrading to Unity 2019.2
Upgrading to Unity 2019.1
Upgrading to Unity 2018.3
Upgrading to Unity 2018.2
Upgrading to Unity 2018.1
Upgrading to Unity 2017.3
Upgrading to Unity 2017.2
Upgrading to Unity 2017.1
Upgrading to Unity 5.6
Upgrading to Unity 5.5
Upgrading to Unity 5.4
5.4 Networking API Changes
Upgrading to Unity 5.3
Upgrading to Unity 5.2
Upgrading to Unity 5.0
AI in Unity 5.0
Animation in Unity 5.0
Audio in Unity 5.0
Baked Data in Unity 5.0
Plugins in Unity 5.0
Physics in Unity 5.0
Shaders in Unity 5.0
Other Upgrade Notes for Unity 5.0
Upgrading to Unity 4.0
Upgrading to Unity 3.5
Importing
Importing Models
Importing humanoid animations
Importing non-humanoid animations
Model Import Settings window
Model tab
Rig tab
Avatar Mapping tab
Avatar Muscle & Settings tab
Avatar Mask window
Human Template window
Animation tab
Euler curve resampling
Extracting animation clips
Loop optimization on Animation clips
Curves
Events
Mask
Motion
Materials tab
SketchUp Import Settings window
SpeedTree Import Settings window
Model tab
Materials tab
Supported Model file formats
Creating Assets outside of Unity
Modeling characters for optimal performance
Preparing Humanoid Assets for export
Using FBX files in other applications
Limitations on importing Models into Unity
2D
Gameplay in 2D
2D Sorting
Sprites
Sprite Renderer
Sprite Creator
Sprite Editor
Sprite Editor: Custom Outline
Sprite Editor: Custom Physics Shape
Sprite Editor: Secondary Textures
Sorting Groups
9-slicing Sprites
Sprite Masks
Sprite Atlas
Master and Variant Sprite Atlases
Variant Sprite Atlas
Sprite Atlas workflow
Preparing Sprite Atlases for distribution
Methods of distribution
Late Binding
Resolving different Sprite Atlas scenarios
Sprite Packer Modes
(Legacy) Sprite Packer
Sprite Shape Renderer
Tilemap
Grid
Tilemap Renderer
Tile Assets
Creating Tiles
Creating Tilemaps
Tile Palette
Hexagonal Tilemaps
Isometric Tilemaps
Importing and preparing Sprites
Creating an Isometric Tilemap
Creating a Tile Palette for an Isometric Tilemap
Tilemap Renderer Modes
Scriptable Brushes
Painting on Tilemaps
Tilemap Collider 2D
Scriptable Tiles
TileBase
Tile
TileData
TileAnimationData
Other useful classes
Scriptable Tile example
Scriptable Brushes
GridBrushBase
GridBrushEditorBase
Other useful classes
Scriptable Brush example
Physics Reference 2D
Rigidbody 2D
Collider 2D
Circle Collider 2D
Box Collider 2D
Polygon Collider 2D
Edge Collider 2D
Capsule Collider 2D
Composite Collider 2D
Physics Material 2D
2D Joints
Distance Joint 2D
Fixed Joint 2D
Friction Joint 2D
Hinge Joint 2D
Relative Joint 2D
Slider Joint 2D
Spring Joint 2D
Target Joint 2D
Wheel Joint 2D
Constant Force 2D
Effectors 2D
Area Effector 2D
Buoyancy Effector 2D
Point Effector 2D
Platform Effector 2D
Surface Effector 2D
Graphics
Graphics Overview
Lighting
Lighting overview
Lighting Window
Light Explorer
Light sources
Types of light
The Light Inspector
Using Lights
Cookies
Shadows
Shadows
Directional light shadows
Global Illumination
Lightmapping
Lightmapping Settings
Progressive GPU Lightmapper (Preview)
Progressive CPU Lightmapper
Lightmapping: Getting started
Lightmap seam stitching
UV overlap feedback
Custom fall-off
Enlighten
Using precomputed lighting
LOD and Realtime GI
Lightmapping: Getting started
Lightmap seam stitching
UV overlap feedback
Custom fall-off
Lightmap Parameters
Baked ambient occlusion
LOD for baked lightmaps
Light Probes
Light Probes: Technical information
Light Probe Groups
Placing probes using scripting
Light Probes for moving objects
Light Probes and the Mesh Renderer
Light Probe Proxy Volume component
Reflection probes
Types of Reflection Probe
Using Reflection Probes
Advanced Reflection Probe Features
Reflection probe performance and optimisation
Lighting Modes
Lighting: Technical information and terminology
Real-time lighting
Mixed lighting
Baked Indirect mode
Shadowmask mode
Shadowmask
Distance Shadowmask
Subtractive mode
Baked lighting
GI visualizations in the Scene view
Lighting Data Asset
Lightmap Directional Modes
Lightmaps: Technical information
Material properties and the GI system
Global Illumination UVs
Importing UVs from Autodesk® Maya® to Unity
Generating Lightmap UVs
GI cache
Light troubleshooting and performance
Related topics
Linear rendering overview
Linear or gamma workflow
Gamma Textures with linear rendering
Working with linear Textures
Cameras
Using more than one camera
Using Physical Cameras
Camera Tricks
Understanding the View Frustum
The Size of the Frustum at a Given Distance from the Camera
Rays from the Camera
Using an Oblique Frustum
Creating an Impression of Large or Small Size
Occlusion culling
Occlusion Areas
Occlusion Portals
Dynamic resolution
Materials, Shaders & Textures
Textures
Creating and Using Materials
Standard Shader
Content and Context
Metallic vs Specular Workflow
Material parameters
Rendering Mode
Albedo Color and Transparency
Specular mode: Specular parameter
Metallic mode: Metallic Parameter
Smoothness
Normal map (Bump mapping)
Heightmap
Occlusion Map
Emission
Secondary Maps (Detail Maps) & Detail Mask
The Fresnel Effect
Material charts
Make your own
Standard Particle Shaders
Physically Based Rendering Material Validator
Accessing and Modifying Material parameters via script
Writing Shaders
Legacy Shaders
Usage and Performance of Built-in Shaders
Normal Shader Family
Vertex-Lit
Diffuse
Specular
Bumped Diffuse
Bumped Specular
Parallax Diffuse
Parallax Bumped Specular
Decal
Diffuse Detail
Transparent Shader Family
Transparent Vertex-Lit
Transparent Diffuse
Transparent Specular
Transparent Bumped Diffuse
Transparent Bumped Specular
Transparent Parallax Diffuse
Transparent Parallax Specular
Transparent Cutout Shader Family
Transparent Cutout Vertex-Lit
Transparent Cutout Diffuse
Transparent Cutout Specular
Transparent Cutout Bumped Diffuse
Transparent Cutout Bumped Specular
Self-Illuminated Shader Family
Self-Illuminated Vertex-Lit
Self-Illuminated Diffuse
Self-Illuminated Specular
Self-Illuminated Normal mapped Diffuse
Self-Illuminated Normal mapped Specular
Self-Illuminated Parallax Diffuse
Self-Illuminated Parallax Specular
Reflective Shader Family
Reflective Vertex-Lit
Reflective Diffuse
Reflective Specular
Reflective Bumped Diffuse
Reflective Bumped Specular
Reflective Parallax Diffuse
Reflective Parallax Specular
Reflective Normal Mapped Unlit
Reflective Normal mapped Vertex-lit
Video overview
Video Player component
Migrating from MovieTexture to VideoPlayer
Video Clips
Video sources
Video file compatibility
Understanding video files
Video transparency support
Panoramic video
Terrain
Creating and editing Terrains
Create Neighbor Terrains
Terrain tools
Raise or Lower Terrain
Paint Texture
Set Height
Smooth Height
Stamp Terrain
Terrain Layers
Brushes
Trees
SpeedTree
Wind Zones
Grass and other details
Working with Heightmaps
Terrain settings
Tree Editor
Building Your First Tree
Tree Basics
Branch Group Properties
Leaf Group Properties
Wind Zones
Particle Systems
What is a Particle System?
Using Particle Systems in Unity
Creating a simple explosion
Creating exhaust smoke from a vehicle
Particle System vertex streams and Standard Shader support
Particle System GPU Instancing
Post-processing overview
Anti-aliasing
Ambient Occlusion
Bloom
Chromatic Aberration
Color Grading
Deferred Fog
Depth of Field
Auto Exposure
Grain
Motion Blur
Screen Space Reflection
Vignette
Advanced Rendering Features
High Dynamic Range Rendering
HDR color picker
Rendering Paths
Level of Detail (LOD)
Graphics API support
DirectX
Metal
OpenGL Core
Compute shaders
Graphics Command Buffers
GPU instancing
Sparse Textures
CullingGroup API
Asynchronous Texture Upload
Procedural Mesh Geometry
Anatomy of a Mesh
Using the Mesh Class
Example - Creating a quad
Optimizing graphics performance
Draw call batching
Rendering Statistics Window
Frame Debugger
Optimizing Shader Load Time
Texture Streaming
Streaming Controller
Texture Streaming API
Layers
Layer-based collision detection
Graphics Reference
Cameras Reference
Camera
Flare Layer
GUI Layer (Legacy)
Shader Reference
Writing Surface Shaders
Surface Shader examples
Custom lighting models in Surface Shaders
Surface Shader lighting examples
Surface Shaders with DX11 / OpenGL Core Tessellation
Writing vertex and fragment shaders
Vertex and fragment shader examples
Shader semantics
Accessing shader properties in Cg/HLSL
Providing vertex data to vertex programs
Built-in shader include files
Predefined Shader preprocessor macros
Built-in shader helper functions
Built-in shader variables
Making multiple shader program variants
GLSL Shader programs
Shading Language used in Unity
Shader Compilation Target Levels
Shader data types and precision
Using sampler states
ShaderLab Syntax
ShaderLab: Properties
ShaderLab: SubShader
ShaderLab: Pass
ShaderLab culling and depth testing
ShaderLab: Blending
ShaderLab: Pass Tags
ShaderLab: Stencil
ShaderLab: Name
ShaderLab: Legacy Lighting
ShaderLab: Legacy Texture Combiners
ShaderLab: Legacy Alpha Testing
ShaderLab: Legacy Fog
ShaderLab: Legacy BindChannels
ShaderLab: UsePass
ShaderLab: GrabPass
ShaderLab: SubShader Tags
ShaderLab: Fallback
ShaderLab: CustomEditor
ShaderLab: other commands
Shader assets
Advanced ShaderLab topics
Unity's Rendering Pipeline
Performance tips when writing shaders
Rendering with Replaced Shaders
Custom Shader GUI
Using Depth Textures
Camera's Depth Texture
Platform-specific rendering differences
Shader Level of Detail
Texture arrays
Debugging DirectX 11/12 shaders with Visual Studio
Debugging DirectX 12 shaders with PIX
Implementing Fixed Function TexGen in Shaders
Particle Systems reference
Particle System
Particle System modules
Particle System Main module
Emission module
Shape Module
Velocity over Lifetime module
Noise module
Limit Velocity Over Lifetime module
Inherit Velocity module
Force Over Lifetime module
Color Over Lifetime module
Color By Speed module
Size over Lifetime module
Size by Speed module
Rotation Over Lifetime module
Rotation By Speed module
External Forces module
Collision module
Triggers module
Sub Emitters module
Texture Sheet Animation module
Lights module
Trails module
Custom Data module
Renderer module
Particle System Force Field
Visual Effects Reference
Halo
Lens Flare
Flare
Line Renderer
Trail Renderer
Billboard Renderer
Billboard Asset
Projector
Mesh Components
Meshes
Material
Mesh Filter
Mesh Renderer
Skinned Mesh Renderer
Text Mesh
Text Asset
Font
Texture Components
Textures
Importing Textures
Texture Types
Texture compression formats for platform-specific overrides
Render Texture
Custom Render Textures
Movie Textures
3D Textures
Texture arrays
Rendering Components
Cubemap
Skybox
Reflection Probe
LOD Group
Rendering Pipeline Details
Deferred shading rendering path
Forward Rendering Path Details
Legacy Deferred Lighting Rendering Path
Vertex Lit Rendering Path Details
Hardware Requirements for Unity's Graphics Features
Graphics HOWTOs
How do I Import Alpha Textures?
How to make a Skybox
How do I make a Spot Light Cookie?
How do I fix the rotation of an imported model?
Art Asset best practice guide
Importing models from 3D modeling software
How to do Stereoscopic Rendering
Graphics Tutorials
Shaders: ShaderLab and fixed function shaders
Shaders: vertex and fragment programs
Scriptable Render Pipeline
Scriptable Render Pipeline (SRP) Batcher
Light Explorer extension
Physics
Physics Overview
Rigidbody overview
Colliders
Joints
Character Controllers
Continuous collision detection (CCD)
Physics Debug Visualization
3D Physics Reference
Box Collider
Capsule Collider
Character Controller
Character Joint
Configurable Joint
Constant Force
Fixed Joint
Hinge Joint
Mesh Collider
Rigidbody
Sphere Collider
Spring Joint
Cloth
Wheel Collider
Terrain Collider
Physic Material
Physics HOWTOs
Ragdoll Wizard
Joint and Ragdoll stability
Wheel Collider Tutorial
Scripting
Scripting Overview
Creating and Using Scripts
Variables and the Inspector
Controlling GameObjects using components
Event Functions
Time and Framerate Management
Creating and Destroying GameObjects
Coroutines
Namespaces
Attributes
Order of Execution for Event Functions
Understanding Automatic Memory Management
Platform dependent compilation
Special folders and script compilation order
Assembly Definitions
Assembly Definition properties
Managed code stripping
.NET profile support
Referencing additional class library assemblies
Stable scripting runtime: known limitations
Generic Functions
Scripting restrictions
Script Serialization
Built-in serialization
Custom serialization
Script serialization errors
UnityEvents
What is a Null Reference Exception?
Important Classes
Vector Cookbook
Understanding Vector Arithmetic
Direction and Distance from One Object to Another
Computing a Normal/Perpendicular vector
The Amount of One Vector's Magnitude that Lies in Another Vector's Direction
Scripting Tools
Console Window
Log Files
C# compiler
IL2CPP
Building a project using IL2CPP
Compiler options
Windows Runtime support
How IL2CPP works
Optimizing IL2CPP build times
Integrated development environment (IDE) support
Debugging C# code in Unity
Event System
Messaging System
Input Modules
Supported Events
Raycasters
Event System Reference
Event System Manager
Graphic Raycaster
Physics Raycaster
Physics 2D Raycaster
Standalone Input Module
Touch Input Module
Event Trigger
C# Job System
C# Job System Overview
What is multithreading?
What is a job system?
The safety system in the C# Job System
NativeContainer
Creating jobs
Scheduling jobs
JobHandle and dependencies
ParallelFor jobs
ParallelForTransform jobs
C# Job System tips and troubleshooting
Multiplayer and Networking
Multiplayer Overview
Setting up a multiplayer project
Using the Network Manager
Using the Network Manager HUD
The Network Manager HUD in LAN mode
The Network Manager HUD in Matchmaker mode
Converting a single-player game to Unity Multiplayer
Debugging Information
The Multiplayer High Level API
Networking HLAPI System Concepts
Networked GameObjects
Player GameObjects
Custom Player Spawning
Spawning GameObjects
Custom Spawn Functions
Network Authority
State synchronization
Advanced State Synchronization
Network visibility
Customizing network visibility
Scene GameObjects
Actions and communication
Remote Actions
Network Manager callbacks
NetworkBehaviour callbacks
Network Messages
Dealing with clients and servers
Network clients and servers
Host Migration
Network Discovery
Multiplayer Lobby
Using the Transport Layer API
NetworkReader and NetworkWriter serializers
Setting up Unity Multiplayer
Integrating the Multiplayer Service
Integration using the HUD
Integration using Unity's High-Level API
Integration using NetworkTransport
Common Errors
Customized Matchmaking callbacks
Networking Tips for Mobile devices.
Multiplayer Component Reference
Network Animator
Network Discovery
Network Identity
Network Lobby Manager
Network Lobby Player
Network Manager HUD
Network Manager
Network Proximity Checker
NetworkStartPosition
Network Transform
Network Transform Child
Network Transform Visualizer
Multiplayer Classes Reference
NetworkBehaviour
NetworkClient
NetworkConnection
NetworkServer
NetworkServerSimple
UnityWebRequest
Common operations: using the HLAPI
Retrieving text or binary data from an HTTP Server (GET)
Retrieving a Texture from an HTTP Server (GET)
Downloading an AssetBundle from an HTTP server (GET)
Sending a form to an HTTP server (POST)
Uploading raw data to an HTTP server (PUT)
Advanced operations: Using the LLAPI
Creating UnityWebRequests
Creating UploadHandlers
Creating DownloadHandlers
Audio
Audio Overview
Audio files
Tracker Modules
Audio Mixer
An overview of the concepts and AudioMixer
Specifics on the AudioMixer window
AudioGroup Inspector
Overview of Usage and API
Native Audio Plugin SDK
Audio Spatializer SDK
Audio Profiler
Ambisonic Audio
Audio Reference
Audio Clip
Audio Listener
Audio Source
Audio Mixer
Audio Filters
Audio Low Pass Filter
Audio High Pass Filter
Audio Echo Filter
Audio Distortion Filter
Audio Reverb Filter
Audio Chorus Filter
Audio Effects
Audio Low Pass Effect
Audio High Pass Effect
Audio Echo Effect
Audio Flange Effect
Audio Distortion Effect
Audio Normalize Effect
Audio Parametric Equalizer Effect
Audio Pitch Shifter Effect
Audio Chorus Effect
Audio Compressor Effect
Audio SFX Reverb Effect
Audio Low Pass Simple Effect
Audio High Pass Simple Effect
Reverb Zones
Microphone
Audio Settings
Animation
Animation System Overview
Animation Clips
Animation from external sources
Humanoid Avatars
Animation Window Guide
Using the Animation view
Creating a new Animation Clip
Animating a GameObject
Using Animation Curves
Editing Curves
Key manipulation in Dopesheet mode
Key manipulation in Curves mode
Objects with Multiple Moving Parts
Using Animation Events
Animator Controllers
The Animator Controller Asset
The Animator Window
Animation State Machines
State Machine Basics
Animation Parameters
State Machine Transitions
State Machine Behaviours
Sub-State Machines
Animation Layers
Solo and Mute functionality
Target Matching
Inverse Kinematics
Root Motion - how it works
Tutorial: Scripting Root Motion for "in-place" humanoid animations
Blend Trees
1D Blending
2D Blending
Direct Blending
Additional Blend Tree Options
Working with blend shapes
Animator Override Controllers
Retargeting of Humanoid animations
Performance and optimization
Animation Reference
Animator component
Animator Controller
Creating an AnimatorController
Animation States
Animation transitions
Animation FAQ
Playables API
The PlayableGraph
ScriptPlayable and PlayableBehaviour
Playables Examples
A Glossary of animation terms
Timeline
Timeline overview
Using the Timeline window
Creating a Timeline Asset and Timeline instance
Recording basic animation with an Infinite clip
Converting an Infinite clip to an Animation clip
Animating a humanoid
Using Animation Override tracks and Avatar Masking
Nesting Timeline instances
Timeline window
Timeline Preview and Timeline Selector
Timeline Playback Controls
Track list and Track headers
Adding tracks
Selecting tracks
Duplicating tracks
Deleting tracks
Locking tracks
Muting tracks
Reordering tracks and rendering priority
Using Track groups
Collapsing and expanding Track groups
Locking Track groups
Clip Edit modes and the Clips view
Panning and zooming the Clips view
Adding clips
Inserting clips
Selecting clips
Positioning clips
Tiling clips
Duplicating clips
Trimming clips
Splitting clips
Resetting clips
Changing clip play speed
Setting gap extrapolation
Easing-in and easing-out clips
Blending clips
Matching clip offsets
Curves view
Hiding and showing curves
Navigating the Curves view
Selecting keys
Adding keys
Editing keys
Changing interpolation and shape
Deleting keys
Timeline Settings
Timeline properties in the Inspector window
Setting Timeline Asset properties
Setting track properties
Activation track properties
Animation track properties
Setting clip properties
Activation clip properties
Animation clip common properties
Animation clip Playable Asset properties
Audio clip properties
Control clip common properties
Control clip Playable Asset properties
Playable Director component
Timeline glossary
User interfaces (UI)
UIElements Developer Guide
The Visual Tree
The Layout Engine
The UXML format
Writing UXML Templates
Loading UXML from C#
UXML elements reference
UQuery
Styles and Unity style sheets
USS selectors
USS Properties types
USS supported properties
USS Writing style sheets
The Event System
Dispatching Events
Responding to Events
Supporting drag and drop
Synthesizing Events
Event Type Reference
Built-in Controls
Bindings
Supporting IMGUI
ViewData persistence
Unity UI
Canvas
Basic Layout
Visual Components
Interaction Components
Animation Integration
Auto Layout
Rich Text
UI Reference
Rect Transform
Canvas Components
Canvas
Canvas Scaler
Canvas Group
Canvas Renderer
Visual Components
Text
Image
Raw Image
Mask
RectMask2D
UI Effect Components
Shadow
Outline
Position as UV1
Interaction Components
Selectable Base Class
Transition Options
Navigation Options
Button
Toggle
Toggle Group
Slider
Scrollbar
Dropdown
Input Field
Scroll Rect
Auto Layout
Layout Element
Content Size Fitter
Aspect Ratio Fitter
Horizontal Layout Group
Vertical Layout Group
Grid Layout Group
UI How Tos
Designing UI for Multiple Resolutions
Making UI elements fit the size of their content
Creating a World Space UI
Creating UI elements from scripting
Creating Screen Transitions
Immediate Mode GUI (IMGUI)
IMGUI Basics
Controls
Customization
IMGUI Layout Modes
Extending IMGUI
GUI Skin (IMGUI System)
GUI Style (IMGUI System)
Navigation and Pathfinding
Navigation Overview
Navigation System in Unity
Inner Workings of the Navigation System
Building a NavMesh
NavMesh building components
NavMesh Surface
NavMesh Modifier
NavMesh Modifier Volume
NavMesh Link
NavMesh building components API
Advanced NavMesh Bake Settings
Creating a NavMesh Agent
Creating a NavMesh Obstacle
Creating an Off-mesh Link
Building Off-Mesh Links Automatically
Building Height Mesh for Accurate Character Placement
Navigation Areas and Costs
Loading Multiple NavMeshes using Additive Loading
Using NavMesh Agent with Other Components
Navigation Reference
NavMesh Agent
Nav Mesh Obstacle
Off-Mesh Link
Navigation How-Tos
Telling a NavMeshAgent to Move to a Destination
Moving an Agent to a Position Clicked by the Mouse
Making an Agent Patrol Between a Set of Points
Coupling Animation and Navigation
Unity Services
Setting up your project for Unity Services
Unity Organizations
Subscriptions and seats
Managing your Organization
Managing your Organization’s Projects
Transfer a Project to a new Organization
Working with Unity Teams
Unity Ads
Unity developer integration
Unity Analytics
Unity Analytics Overview
Setting Up Analytics
Analytics Dashboard
Overview page
Data Explorer
Funnel Analyzer page
Segment Builder
Remote Settings page
Raw Data Export page
Event Manager
Configure page
Market Insights
Analytics events
Core Events
Standard Events
Custom Events
Custom Event scripting
Analytics Event Tracker
Analytics event parameters
Analytics Event limits
Funnels
Remote Settings
Creating and changing Remote Settings
Using Remote Settings in a Unity project
Remote Settings network requests
Enabling Remote Settings
Managing Remote Settings in the Unity Editor
Remote Settings component
Remote Settings scripting
Testing Remote Settings
Unity Analytics A/B Testing
Monetization
Receipt Verification
User Attributes
Unity Analytics Raw Data Export
Data reset
Upgrading Unity Analytics
Upgrade Unity Analytics 4.x-5.1 (SDK) to 5.2 onwards
Upgrade Unity Analytics 5.1 to 5.2 onwards
Unity Analytics Re-integrate SDK to 5.1
What to Do if Project IDs Don't Match
COPPA Compliance
Unity Analytics and the EU General Data Protection Regulation (GDPR)
Unity Analytics DataPrivacy API
Analytics Metrics, Segments, and Terminology
Unity Cloud Build
Automated Build Generation
Supported platforms
Supported versions of Unity
Version control systems
Using the Unity Developer Dashboard to configure Unity Cloud Build for Git
Using the Unity Editor to configure Unity Cloud Build for Git
Using the Unity Developer Dashboard to configure Unity Cloud Build for Mercurial
Using the Unity Editor to configure Unity Cloud Build for Mercurial
Using Apache Subversion (SVN) with Unity Cloud Build
Using the Unity Developer Dashboard to configure Unity Cloud Build for Perforce
Using the Unity Editor to configure Unity Cloud Build for Perforce
Building for iOS
Advanced options
Development builds
Pre- and post-export methods
Xcode frameworks
Custom scripting #define directives
Including specific Scenes
Build manifest
Build manifest as JSON
Build manifest as ScriptableObject
Cloud Build REST API
Unity IAP
Setting up Unity IAP
Configuring for Apple App Store and Mac App Store
Configuring for Google Play Store
Configuring for Windows Store
Configuration for the Amazon Appstore
Samsung Galaxy IAP configuration
Cross Platform Guide
Codeless IAP
Defining products
Subscription Product support
Initialization
Browsing Product Metadata
Initiating Purchases
Processing Purchases
Handling purchase failures
Restoring Transactions
Purchase Receipts
Receipt validation
Store Extensions
Cross-store installation issues with Android in-app purchase stores
Store Guides
iOS & Mac App Stores
Universal Windows Platform
Google Play
Amazon Appstore and Amazon Underground Store
Samsung Galaxy apps
CloudMoolah MOO store
Unity IAP Xiaomi integration guide
Unity Channel SDK and API extensions
Implementing a Store
Initialization
Retrieving products
Handling purchases
Store Modules
Registering your store
Store Configuration
Store Extensions
Unity Collaborate
Setting up Unity Collaborate
Adding team members to your Unity Project
Viewing history
Enabling Cloud Build with Collaborate
Managing Unity Editor versions
Reverting files
Resolving file conflicts
Excluding Assets from publishing to Collaborate
Publishing individual files to Collaborate
Restoring previous versions of a project
In-Progress edit notifications
Managing cloud storage
Moving your Project to another version control system
Collaborate troubleshooting tips
Unity Cloud Diagnostics
Unity Integrations
Multiplayer Services
XR
XR SDKs
Google VR
Google VR hardware and software requirements
Google VR quick start guide
Supported APIs and SDKs
Google VR controllers and input devices
Google VR features overview
Unity Google VR Video Async Reprojection
Google VR resources and troubleshooting
Vuforia
Vuforia hardware and software requirements
Vuforia quick start guide
Setting up your Project for Vuforia
Setting up Image Targets
Importing and activating the Target Database in Unity
Adding Image Targets to your Scene
Displaying 3D models on top of tracked images
Vuforia platform configuration settings
Vuforia tips, troubleshooting and resources
Windows Mixed Reality
WMR hardware and software requirements
*WMR* quick start guide
WMR input and interaction concepts
WMR testing during development
HoloLens WorldAnchor persistence
HoloLens Anchor Sharing
HoloLens Web Camera
HoloLens photo capture
HoloLens video capture
HoloLens Spatial Mapping
Spatial Mapping components
SpatialMapping General Settings
Spatial Mapping Collider
Spatial Mapping Renderer
Spatial Mapping low level API
Spatial Mapping common troubleshooting issues
Unity XR Input
Input for Windows Mixed Reality
Input for OpenVR controllers
Input for Oculus
Daydream Controllers
XR API reference
Mixed Reality Devices
VR overview
VR devices
Oculus
OpenVR
Single Pass Stereo rendering (Double-Wide rendering)
Single Pass Instanced rendering
Single-Pass Stereo Rendering for HoloLens
VR Audio Spatializers
VR frame timing
Open-source repositories
How to contribute to Unity
Step 1: Get a Bitbucket account
Step 2: Fork the repository you want to contribute to
Step 3: Clone your fork
Step 4: Apply modifications to your fork
Step 5: Open a pull request on Bitbucket
Step 6: Wait for feedback
Further Reading
FAQ
Asset Store Publishing
Adding Keywords to Assets
Asset Store Publisher Administration
Asset Store FAQ
Asset Store Publishing Guide
DeprecateAssetGuide
Asset Store Manual
Publisher Admin Section Overview
Setting up Google Analytics
Viewing the status of your Asset Store submissions
Refunding your customers
Removing your Assets from the Asset Store
Providing support
Asset Store promotions
Platform development
Standalone
Standalone Player settings
PC, Mac & Linux Standalone build settings
Multi-display
macOS
macOS Player: IL2CPP Scripting Backend
macOS Player: C++ source code plugins for IL2CPP
Delivering your application to the Mac App Store
Apple TV
Building games for Apple TV
tvOS build settings
Apple TV Player settings
WebGL
WebGL Player settings
Getting started with WebGL development
WebGL Browser Compatibility
Building and running a WebGL project
WebGL: Deploying compressed builds
Server configuration for WebAssembly streaming
Debugging and troubleshooting WebGL builds
WebGL Graphics
WebGL Networking
Using Audio In WebGL
WebGL performance considerations
Embedded Resources on WebGL
Memory in WebGL
WebGL: Interacting with browser scripting
Using WebGL Templates
Cursor locking and full-screen mode in WebGL
Input in WebGL
iOS
Getting started with iOS development
Unity iOS Basics
iOS account setup
Inside the iOS build process
Structure of a Unity XCode Project
Customizing an iOS Splash Screen
iOS build settings
iOS Player settings
iOS 2D Texture Overrides
iOS Advanced Topics
Unity Remote
iOS Scripting
iOS Game Controller support
Advanced iOS scripting
Optimizing Performance on iOS
iOS-specific optimizations
Measuring performance with the built-in profiler
Optimizing the size of the built iOS Player
Optimizing Physics Performance
Building plug-ins for iOS
Preparing your application for In-App Purchases (IAP)
App thinning
Managed stack traces on iOS
Troubleshooting on iOS devices
Reporting crash bugs on iOS
Android
Getting started with Android development
Android environment setup
Unity Remote
Troubleshooting Android development
Building apps for Android
Reporting crash bugs under Android
Support for APK expansion files (OBB)
Android Scripting
Advanced Unity mobile scripting
Building and using plug-ins for Android
AAR plug-ins and Android Libraries
JAR plug-ins
Extending the UnityPlayerActivity Java Code
Native (C++) plug-ins for Android
Using Java or Kotlin source files as plug-ins
Customizing an Android Splash Screen
Single-Pass Stereo Rendering for Android
Android Player settings
Android 2D Texture Overrides
Gradle for Android
Gradle troubleshooting
Android Manifest
Requesting Permissions
App patching for fast development iteration
Facebook
Getting started with Facebook development
Facebook Player settings
Windows
Windows General
Windows standalone Player build binaries
Windows Debugging
WindowsLowIntegrity
Windows Player: IL2CPP Scripting Backend
Windows Player: IL2CPP build files
Windows Player: C++ source code plugins for IL2CPP
Universal Windows Platform
Getting Started
Universal Windows Platform: Deployment
Universal Windows Platform (UWP) build settings
Universal Windows Platform: Profiler
Universal Windows Platform: Command line arguments
Universal Windows Platform: Association launching
AppCallbacks class
Universal Windows Platform: WinRT API in C# scripts
Universal Windows Player settings
Universal Windows Platform: IL2CPP scripting back end
Universal Windows Platform: Generated project with IL2CPP scripting backend
Universal Windows Platform: Plugins on IL2CPP Scripting Backend
Universal Windows Platform: Debugging on IL2CPP Scripting Backend
FAQ
Universal Windows Platform: Examples
Universal Windows Platform: Code snippets
Known issues
Mobile Developer Checklist
Crashes
Profiling
Optimizations
Practical guide to optimization for mobiles
Graphics Methods
Scripting and Gameplay Methods
Rendering Optimizations
Optimizing Scripts
Experimental
Scripted Importers
Look Dev
Overview
The Look Dev view
Control panel
Settings menu
Views menu
HDRI environments in Look Dev
The HDRI view
HDRI menus
Environment Shadow
Legacy Topics
Windows Store: Windows SDKs
Windows Phone 8.1
Windows Phone 8.1: Debugging
Windows 8.1 Universal Applications
Universal Windows 10 Applications: Getting Started
Asset Server (Team License)
Setting up the Asset Server
Legacy Asset Bundles
Creating Asset Bundles in Unity 4
Managing Asset Dependencies in Unity 4
Legacy Animation System
Animation
Animation Scripting (Legacy)
Legacy GUI
GUI Text (Legacy UI Component)
GUI Texture (Legacy UI Component)
Legacy Unity Analytics (SDK Workflow)
Basic Integration (SDK)
Import SDK
Create Game Script
Attach Game Script
Play To Validate
Advanced Integration (SDK)
Custom Events
Monetization
Receipt Verification
User Attributes
Best practice guides
Understanding optimization in Unity
Profiling
Memory
Coroutines
Asset auditing
Understanding the managed heap
Strings and text
The Resources folder
General Optimizations
Special optimizations
Making believable visuals in Unity
Preparing Assets for Unity
Preparing render settings in Unity
Lighting strategy
Modeling
Shading
Outdoor lighting and Scene setup
Indoor and local lighting
Understanding post-processing
Dynamic lighting
Best Practice: Setting up the Lighting Pipeline
Expert guides
New in Unity 2019.2
Glossary
This version of Unity is unsupported.
Unity Manual
Searching User Manual, please wait.