Introduction
  • Introduction
  • Requirements
  • ROAD MAP
  • Project Setup & Editor Overview.
  • (iPhone/Android/PC/Mac) Build & Player Settings.
VR Lobby
  • Creating and placing Game Objects.
  • Creating and assigning Materials.
  • Importing textures.
  • Creating and assigning a SkyBox Material.
  • Adding XR SDKs to use head tracking and stereo camera rendering.
  • (iPhone) Building and running the VR test scene on the device.
  • (Android) Build & Run.
  • (Windows/Mac) Build & Run.
Adding a 360 audio/video background
  • Project Setup Review.
  • Importing Video Files.
  • Adding a Video Player to playback video content.
  • Creating a Render Texture to *link* the Video Player to the Skybox Material.
Adding interactivity : what am I looking/pointing at?
  • Objectives.
  • Scene Setup.
  • Using Prefabs.
  • Creating a new C# script and setting up our development environment.
  • Overview of the MonoBehaviour and C# scripting.
  • Accessing and modifying another component.
  • Using a Gradient object.
  • Using C# Properties to optimise the refreshing of values.
  • Referencing another object's (Transform) component.
  • Using Code Snippets (Templates) to easily and quickly add more properties.
  • Using MonoDevelop Tasks.
  • Vectors and Visual Debug features.
  • More maths, with inverse linear interpolations.
  • Using Unity Events to drive any other value.
  • Using Animation Curves to ease in and out the linear interpolation.
Previewing actions on interact-able items.
  • Object Focus Manager.
  • Implementing the manager as a Singleton.
  • Static methods.
  • Focus Events.
Triggering actions.
  • Setting up the Progress Bar.
  • Handling touch screen inputs.
  • Action Trigger.
  • Cancelling the Trigger.
  • Loading a Scene.
Supporting other input types.
  • Handling wireless gamepads.
  • Using Keycodes.
  • Using abstract classes to gather common mechanics.
  • Adding events to the GamePad Manager.
  • Using Unity's Input class to support VR Device controllers.
XR Specifics.
  • Recentering the sight when a scene is loaded.
Cardboard Specifics.
  • Using the Gyroscope instead of XR tracking when on Cardboard in the Editor.
  • Stereoscopic Rendering in the Editor when using the Cardboard.
Navigating 3D Worlds
  • Different ways to navigate a 3D world.
  • Importing the basecamp scene from the Asset Store.
  • Scene setup.
  • Navigation strategy.
  • Looking forward...
  • Using Ray Casting to find an intersection.
  • Ignoring intersections with set layers.
  • Looking through trigger colliders.
  • Bouncing off walls..
  • More Ray Casting ...
  • Baking a NavMesh.
  • Finding a position within the NavMesh.
  • Creating a 3D reticle object.
  • Positioning the reticle.
  • Setting up the Nav Agent.
  • Setting up the navigation with XR devices.
  • Using VR "Nodes" (controllers).
  • Disabling XR Camera position tracking.
  • Opening doors as we get close.
  • Trigger detection.
  • Animator parameter change.
  • Filtering with tags.
  • Applying changes to all doors, and add a few optimisations.
  • Triggering Events.
Video Gallery
  • Creating the Video Gallery UI.
  • Populating the UI, and adding listeners to Buttons' onClick events.
  • Loading clips from Resources.
  • Streaming videos from Local Storage.
VR Shortcuts (for Intermediate Unity developers)
  • How do I turn on VR (XR) support ?
  • How do I playback a 360 video background?
  • How do I default to Non VR, then switch VR on later ?
  • How do I use VR head tracking, but disable Stereoscopic rendering?
  • How do I preview Head Tracking with Unity Remote?
  • How do I track a VR device head or hand controller?
  • How do I disable head tracking on the Camera?
  • What locations can I load or stream 360 videos from?
3rd parties & misc.
  • A few free assets worth checking out.
Upgrading to a newer version of Unity.