Documentation

Release Notes

This section describes changes for each version release.

1.12 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.12.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find a scripting reference for the included C# scripts in our Unity Reference Content.

Version Compatibility

On initial release, Utilities v 1.12.0 is compatible with our recommended Unity 5.3.8f1 and 5.4.5f1. For up-to-date compatibility information, see Compatibility and Version Requirements.

New Features

API Changes

  • Added OVRPlugin.GetAppFramerate() to OVRDisplay.cs; returns frame rate reported by Oculus plugin (Rift and Gear VR). Requires a Unity Editor version we recommend for use with Utilities 1.12 - see Compatibility and Version Requirements for details.

Bug Fixes

  • Changed OVRInput.GetAngularVelocity(..) and OVRInput.GetAngularAcceleration(..) to return Vector3 instead of Quaternion, avoiding issues for rates above 2*pi. Developers who need the old behavior for any reason may use Quaternion.Euler(..).
  • Gear VR:
    • Fixed bug causing mobile applications built with Unity versions compatible with Utilities 1.11.0 to crash when returning to focus from Universal Menu or Quit to Home dialog, or when the Gear VR is taken off for several seconds, then put back on.
    • Fixed black screen during launch with developer mode enabled in some Unity 5.3 versions using our 1.11 integration.
    • Fixed bug causing mobile apps using Utilities 1.11.0 to appear tilted when enabling a virtual reality splash screen.
  • VR Compositor Layers:
    1. Added OVRUnderlayTransparentOccluder, which was missing in previous versions.
    2. Fixed issue causing layer colors to appear washed out when using render targets as input textures on PC.
    3. Fixed issue where right-side textures were lost when using stereo pairs of OVROverlays.

Known Issues

  • The following versions of Unity require the Visual C++ Redistributable for Visual Studio 2015 or Rift builds will fail to run in VR, and the error “Security error. This plugin is invalid!” will be reported in output_log.txt:
    • 5.3.6p3-5.3.6p7
    • 5.4.0f1-5.4.2p1
    • 5.5.0b1-5.5.0b8
  • Unity has a known issue such that parenting one VR camera to another will compound tracking twice. As a workaround, make them siblings in the GameObject hierarchy.
  • Rift
    • All Unity versions prior to 5.4.3p3 leak 5MB/s if you have a Canvas in your scene, enable Run In Background, and dismount the Rift. You can check OVRManager.hasVrFocus in an Update function to disable your Canvases while the HMD is dismounted.
    • Transparent VR Compositor Layers do not currently support multiple layers of occlusion.
  • Gear VR
    • Do not use Utilities 1.11.0 due to a crash when returning to focus from Universal Menu or Quit to Home dialog.
    • Due to a Unity bug, the Camera pose can be corrupted by scripts in the first frame after being enabled with VR support. As a workaround, use Utilities 1.12 or zero out the eye anchor poses when a new OVRCameraRig is spawned and the first frame after usePerEyeAnchors changes.
    • With Unity 5.3, the world may appear tilted. As a workaround, use Utilities 1.12 or disable the virtual reality splash image.
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5.3.4-5.3.6p3 and Unity 5.4.0b16-Unity 5.4.0p3: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.
  • Mobile App Submission to Oculus Store
    • All mobile applications using Utilities 1.9 and 1.10 will fail Oculus Store submission due to a bug affecting reserved interaction handling for the Universal Menu. Please remove previously-imported project files as described in Importing the Oculus Utilities Package and import Utilities version 1.12, and update your Unity editor to a compatible version if necessary.
    • When building a mobile application for submission to the Oculus Store, you must set Install Location to Auto in addition to generating a custom manifest as described in Building Mobile Applications.
      1. Click Edit > Project Settings > Player.
      2. Expand the Other Settings properties.
      3. Set Install Location to Auto.

1.11 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.11.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find a scripting reference for the included C# scripts in our Unity Reference Content.

If you have previously imported a Unity integration package, you must delete all Oculus Integration content before importing the new Unity package. For more information, see Importing the Oculus Utilities Package.

Unity 5.3 and 5.6 Support

Unity 5.3 support is deprecated and not all features are guaranteed to work. Please update to 5.4 or 5.5. We do not currently support preview versions of 5.6.

New Features

  • Added Performance Auditing Tool for Rift and mobile development. This tool verifies that your VR project configuration and settings are consistent with our recommendations. For more information, see Performance Auditing Tool.
  • Added OVRGrabber and OVRGrabbable scripts for Oculus Touch to the Room sample in Assets/Scenes/. For details, see our Unity Reference Content.
  • (Mobile only) Added offcenter cubemap support to OVROverlay, allowing you to display an overlay as a cubemap with a texture coordinate offset to increase resolution for areas of interest. For more information, see OVROverlay in our Unity Reference Content.

API Changes

  • Deprecated OVRProfile.

Bug Fixes

  • Fixed bug affecting reserved interaction handling for the Universal Menu that caused all mobile applications using Utilities 1.9 and 1.10 to fail Oculus Store submission.

Known Issues

  • Adaptive Resolution is not currently working and should be disabled. If applications using Adaptive Resolution reach 45 Hz, they will remain stuck at that frame rate until relaunched. A fix is planned for the Rift 1.12 runtime release and should not require any application changes.
  • The following versions of Unity require the Visual C++ Redistributable for Visual Studio 2015 or Rift builds will fail to run in VR, and the error “Security error. This plugin is invalid!” will be reported in output_log.txt:
    • 5.3.6p3-5.3.6p7
    • 5.4.0f1-5.4.2p1
    • 5.5.0b1-5.5.0b8
  • Rift
    • All Unity versions prior to 5.4.3p3 leak 5MB/s if you have a Canvas in your scene, enable Run In Background, and dismount the Rift. You can check OVRManager.hasVrFocus in an Update function to disable your Canvases while the HMD is dismounted.
  • Gear VR
    • Due to a Unity bug, the Camera pose can be corrupted by scripts in the first frame after being enabled with VR support. As a workaround, use Utilities 1.11 or zero out the eye anchor poses when a new OVRCameraRig is spawned and the first frame after usePerEyeAnchors changes.
    • With Unity 5.3, the world may appear tilted. As a workaround, use Utilities 1.10 or disable the virtual reality splash image.
    • All mobile applications using Utilities 1.9 and 1.10 will fail Oculus Store submission due to a bug affecting reserved interaction handling for the Universal Menu. Please remove previously-imported project files as described in Importing the Oculus Utilities Package and import Utilities version 1.11, and update your Unity editor to a compatible version if necessary.
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5.3.4-5.3.6p3 and Unity 5.4.0b16-Unity 5.4.0p3: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.10 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.10.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find a scripting reference for the included C# scripts in our Unity Developer Reference.

If you have previously imported a Unity integration package, you must delete all Oculus Integration content before importing the new Unity package. For more information, see Importing the Oculus Utilities Package.

Utilities 1.10 adds an option to build in APK for submission to the Oculus Store in Tools > Oculus. It also includes a fix for an issue that caused poor performance or freezing when using multiple VR cameras or VR Compositor underlays with Gear VR. Any mobile application using either of these should update to this version.

New Features

  • Added option to Tools > Oculus to build APK for submission to Oculus Store.
  • Added Rift support for cubemap overlays to VR Compositor Layers.

Bug Fixes

  • Fixed poor performance or freezing bug when using multiple VR cameras or VR Compositor underlays with Gear VR.
  • Fixed memory leak in OVROverlay.
  • Fixed uncommon issue in which setting mirror to full screen caused app rendering to freeze in Rift.

Known Issues

  • The following versions of Unity require the Visual C++ Redistributable for Visual Studio 2015 or Rift builds will fail to run in VR, and the error “Security error. This plugin is invalid!” will be reported in output_log.txt:
    • 5.3.6p3-5.3.6p7
    • 5.4.0f1-5.4.2p1
    • 5.5.0b1-5.5.0b8
  • Rift
    • All Unity versions leak 5MB/s if you have a Canvas in your scene, enable Run In Background, and dismount the Rift. You can check OVRManager.hasVrFocus in an Update function to disable your Canvases while the HMD is dismounted.
  • Gear VR
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5.3.4-5.3.6p3 and Unity 5.4.0b16-Unity 5.4.0p3: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.
  • Touch
    • For PCs using Oculus runtime 1.10, OVRInput.GetConnectedControllers() does not mark Touch controllers as disconnected when batteries are removed, and the input mask returns Touch (Left+Right) active when only one controller is on. This issue will resolve automatically when runtime 1.11 is released.

1.9 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.9.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find a scripting reference for the included C# scripts in our Unity Developer Reference.

If you have previously imported a Unity integration package, you must delete all Oculus Integration content before importing the new Unity package. For more information, see Importing the Oculus Utilities Package.

This release adds Gear VR touchpad and back button support to OVRInput.

Be sure to check out the new Mono Optimization sample included in Unity Sample Framework v1.5.1. Monoscopically rendering distant content in a scene can offer significant rendering performance improvements.

New Features

  • Added Gear VR Touchpad and back button support to OVRInput.
  • OVRInput.Controller.Active now automatically switches away from Touch if the user is not holding it.
  • OVRBoundary now supports more than 256 Guardian System bounds points.
  • Improved image quality for higher values in VRSettings.renderScale due to mipmapping. (Rift)

API Changes

  • OVRInput.Button and OVRInput.RawButton events now report Gear VR touchpad swipes and back button presses.

Bug Fixes

  • Unity 5.3.6p8, 5.4.2p2, and 5.5.0b9 correct a failure to report shoulder button events in OVRInput when used with Utilities 1.9.0.
  • Fixed dependency on the Visual C++ Redistributable for Visual Studio 2015 causing Rift builds to fail to run in VR in some versions of Unity (see Known Issues for more information).
  • Fixed 5MB/s memory leak when using OVROverlay.

Known Issues

  • OVRInput fails to report shoulder button events when Utilities 1.9.0 is used with Unity versions 5.4.2p1 and 5.5.0b8 or earlier.
  • The following versions of Unity require the Visual C++ Redistributable for Visual Studio 2015 or Rift builds will fail to run in VR, and the error “Security error. This plugin is invalid!” will be reported in output_log.txt:
    • 5.3.6p3-5.3.6p7
    • 5.4.0f1-5.4.2p1
    • 5.5.0b1-5.5.0b8
  • Rift
    • All Unity versions leak 5MB/s if you have a Canvas in your scene, enable Run In Background, and dismount the Rift. You can check OVRManager.hasVrFocus in an Update function to disable your Canvases while the HMD is dismounted.
  • Gear VR
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5 automatically generates manifest files with Android builds that will cause them to be automatically rejected by the Oculus Store submission portal. If this is blocking your application submission, please let us know on our Developer forum and we will work with you on a temporary workaround.
    • Unity 5.3.4-5.3.6p3 and Unity 5.4.0b16-Unity 5.4.0p3: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.8 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.8.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find an updated scripting reference for the included C# scripts in our Unity Developer Reference.

If you have previously imported a Unity integration package, you must delete all Oculus Integration content before importing the new Unity package. For more information, see Importing the Oculus Utilities Package.

Mobile SDK Examples has been deprecated; use the Unity Sample Frameworkinstead.

New Features

  • Added support for the Oculus Guardian System, which visualizes the bounds of a user-defined Play Area. Note that it is currently unsupported by public versions of the Oculus runtime. See OVRBoundary Guardian System API for more information.
  • Added underlay support allowing VR compositor layers to be rendered behind the eye buffer.
  • Added support for stereoscopic cubemap VR compositor layers (mobile only).

API Changes

  • Added OVRBoundary API for interacting with the Oculus Guardian System.
  • Removed OVRTrackerBounds.

Bug Fixes

  • Fixed blackscreen issue related to unplugging the HDMI cable and re-plugging it back in.
  • Fixed Touch judder issue.

Known Issues

  • Due to issues with earlier releases, we now recommend all developers update to 5.3.6p5 or version 5.4.1p1 or later. 5.3.6p3-5.3.6p4 are also known to work.
  • Gear VR
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5 automatically generates manifest files with Android builds that will cause them to be automatically rejected by the Oculus Store submission portal. If this is blocking your application submission, please let us know on our Developer Forum and we will work with you on a temporary workaround.
    • Gear VR developers using Unity 5.3.4 or later, or using Unity 5.4.0b16 and later: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.7 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.7.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find an updated scripting reference for the included C# scripts in our Unity Developer Reference.

If you have previously imported a Unity integration package, you must delete all Oculus Integration content before importing the new Unity package. For more information, see Importing the Oculus Utilities Package.

New Features

  • Updated OVROverlay.cs to support cubemap (skybox) and hemicylinder overlay shapes (mobile only) in addition to the existing quadrilateral Game Object shape.
  • Added OVRRTOverlayConnector to stream Render Texture contents to an OVROverlay. For more information, see VR Compositor Layers.
  • Added runtime support for Adaptive Resolution (see description in OVRManager).

API Changes

  • Unity versions prior to 5.3.4p5 (or 5.3.3p3 + OVRPlugin 1.3) are no longer supported.
  • OVRInput.SetControllerVibration may no longer address a pair of Touch controllers with OVRinput.Controller.Touch; you must address each controller individually using OVRinput.Controller.LTouch or OVRinput.Controller.RTouch.
  • Removed OVRDebugGraph.cs from Assets/OVR/Scripts/.

Bug Fixes

  • Fixed backwards head-neck model z translation on Gear VR.
  • When targeting Oculus Touch, OVRInput.SetControllerVibration calls are now limited to 30 per second due to performance issues; additional calls are discarded. (Note: we recommend using OVRHaptics to control Touch vibrations - it provides better haptics quality without the performance issues of OVRInput.SetControllerVibration().
  • Fixed crash in CreateDirect3D11SurfaceFromDXGISurface after eye buffer re-allocation on Rift.
  • Fixed OVRInput Xbox controller detection with Unity on Windows 10 Anniversary Edition.
  • Fixed delay when loading with “Run in Background” enabled.
  • Fixed missing runtime support for adaptive viewport scaling.

Known Issues

  • Gear VR
    • Mobile developers should not use Unity versions 5.3.6p1-2 and 5.4.0p1-2 due to incorrect positional movement of the head.
    • Unity 5 automatically generates manifest files with Android builds that will cause them to be automatically rejected by the Oculus Store submission portal. If this is blocking your application submission, please let us know on our Developer Forum and we will work with you on a temporary workaround.
    • Gear VR developers using Unity 5.3.4 or later, or using Unity 5.4.0b16 and later: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.6 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.6.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find an updated scripting reference for the included C# scripts in our Unity Developer Reference.

New Features

  • Added Adaptive Resolution to OVRManager, which automatically scales down app resolution when GPU utilization exceeds 85%. See “OVRManager” in Unity Components for details. (Rift only, requires Unity v 5.4 or later)
  • OVR Screenshot Wizard size parameter is now freeform instead of dropdown selection for greater flexibility.
  • Added recommended anti-aliasing level to help applications choose the right balance between performance and quality.
  • Added support for more than one simultaneous OVROverlay. Now apps can show up to 3 overlay quads on Gear VR and 15 on Rift.

API Changes

  • Added OVRHaptics.cs and OVRHapticsClip.cs to programmatically control haptics for Oculus Touch controller. See OVRHaptics for Oculus Touch for more information.
  • Added public members Enable Adaptive Resolution, Max Render Scale, and Min Render Scale to OVRManager.
  • Added OVRManager.useRecommendedMSAALevel to enable auto-selection of anti-aliasing level based on device performance.
  • Added OVRManager.useIPDInPositionTracking to allow apps to separately disable head position tracking (see OVRManager.usePositionTracking) and stereopsis.

Bug Fixes

  • Fixed bug preventing power save from activating on Gear VR.
  • Fixed counter-intuitive behavior where disabling OVRManager.usePositionTracking prevented proper eye separation by freezing the eye camera positions at their original offset.

Known Issues

  • Gear VR
    • Unity 5 automatically generates manifest files with Android builds that will cause them to be automatically rejected by the Oculus Store submission portal. If this is blocking your application submission, please let us know on our Developer Forum and we will work with you on a temporary workaround.
    • Gear VR developers using Unity 5.3.4 or later, or using Unity 5.4.0b16 and later: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.5 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.5.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find an updated scripting reference for the included C# scripts in our Unity Developer Reference.

New Features

  • Added OVR Screenshot and OVR Capture Probe tools, which exports a 360 screenshot of game scenes in cube map format. See Cubemap Screenshots for more information.
  • Switched to built-in volume indicator on mobile.
  • Exposed OVRManager.vsyncCount to allow half or third-frame rate rendering on mobile.
  • Added bool OVRManager.instance.isPowerSavingActive (Gear VR).

Bug Fixes

  • Repeatedly changing resolution or MSAA level no longer causes slowdown or crashing.
  • Fixed scale of OVRManager.batteryLevel and OVRManager.batteryTemperature.
  • Fixed race condition leading to black screens on Rift in some CPU-heavy cases.
  • Fixed memory bloat due to unpooled buffers when using MSAA.

Known Issues

  • Gear VR developers using Unity 5.3.4 or later, or using Unity 5.4.0b16 and later: Do not set DSP Buffer Size to Best in Audio Manager in the Inspector for now or you will encounter audio distortion. Set it to Good or Default instead.

1.3 Oculus Utilities for Unity 5 Release Notes

Oculus Utilities for Unity 5 version 1.3.2

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity 5. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version. You will find an updated scripting reference for the included C# scripts in our Unity Developer Reference.

Unity Versions and OVRPlugin

Oculus Utilities for Unity 5 version 1.3.2 is for use with Unity 5.3 or Unity 5.4. It may only be used with Unity 5.3.3p3 or later, or 5.4.0b11 or later. You must download and install our OVRPlugin for Unity 1.3.2, available from our Downloads Page, to use these versions. For more information, see Utilities 1.3.2 and OVRPlugin.

New Features

  • OVRInput may now be used without an OVRManager instance in the scene.

API Changes

  • Restored OVRVolumeControl.

Bug Fixes

  • OVRManager.instance.usePositionTracking now toggles the head model on Gear VR.
  • Fixed incorrect fog interaction with transparent UI shader.
  • Fixed crash on start with Unity 5.4.0b14 and b15 on Gear VR.
  • Restored OVRVolumeControl, which was accidentally removed in 1.3.0.

Known Issues

  • Utilities 1.3.0: Volume control will be missing on mobile applications until the release of Mobile SDK 1.0.2. OVRVolumeControl is avaialble with Utilities v 0.1.3.0 and earlier. It was also restored in Utilities v 1.3.2.

Oculus Utilities for Unity 5 version 1.3.0

Overview of Major Changes

This public release incorporates all changes from Utilities private releases 0.2.0 through 1.3.0.

We no longer include the deprecated InputManager.asset file.

Rift Floor-Level Tracking

OVR Manager now includes Tracking Origin Type, which defaults to Eye Level (i.e., tracking origin is handled as in previous releases). When set to Floor Level, tracking origin will be calculated relative to the user’s standing height as specified during Rift setup or with the Oculus app.

Any application running Unity should now be able to pull the correct height information.

New Features

  • Added support for PC SDK 1.3, including support for Rift consumer version hardware.
  • Added support for Asynchronous TimeWarp and Phase Sync.
  • Added Rift Remote controller support.
  • Added application lifecycle management, including VR-initiated backgrounding and exit.
  • Exposed proximity sensor.
  • Added support for multiple trackers.
  • Exposed velocity and acceleration for all tracked nodes.
  • Added support for EyeLevel and FloorLevel tracking origins.
  • Audio input and output now automatically use the Rift microphone and headphones (if enabled in the Oculus app).
  • Rift’s inter-axial distance slider now affects the distance between Unity’s eye poses.
  • Splash screen now uses Asynchronous TimeWarp for smooth tracking during load.
  • Added experimental D3D 12 rendering support.
  • Added events for focus change.
  • Added events for audio device changes requiring sound restart.
  • Added ControllerTracked state.
  • Reduced head tracking latency on Gear VR by updating on render thread
  • Improved performance by reducing lock contention.
  • Exposed power management (CPU and GPU levels) on Android.
  • Exposed queue-ahead on Android to trade latency for CPU-GPU parallelism.

API Changes

  • OVRTracker.GetPose() no longer takes a prediction time. It now takes an optional index specifying the tracker whose pose you want.
  • OVRTracker.frustum has been replaced by OVRTracker.GetFrustum(), which takes an optional index specifying the tracker whose frustum you want.
  • OVRManager.isUserPresent is true when the proximity sensor detects the user.
  • OVRInput.GetControllerLocal[Angular]Velocity/Acceleration exposes the linear and angular velocity and rotation of each Touch controller.
  • OVRDisplay.velocity exposes the head’s linear velocity.
  • OVRDisplay.angularAcceleration exposes the head’s angular acceleration.
  • Removed OVRGamepadController.cs and OVRInputControl.cs scripts, which have been replaced by the new OVRInput.cs script. Refer to OVRInput for more information.
  • Added public member Tracking Origin Type to OVR Manager.
  • Added “floor level” reference frame for apps that need accurate floor height.
  • Removed OVRVolumeControl in favor of Universal Menu’s built-in volume meter.
  • OVRManager.queueAhead now controls Gear VR latency mode, allowing you to trade latency for CPU-GPU parallelism. Queue-ahead is now automatically managed on Rift.
  • Events OVRmanager.VrFocusLost and VrFocusAcquired occur when the app loses and regains VR focus (visibility on the HMD).
  • Events OVRManager.AudioOutChanged and AudioInChanged occur when audio devices change and make audio playback impossible without a restart.
  • OVRManager.cpuLevel controls CPU power-saving vs performance trade-off on Gear VR.
  • OVRManager.gpuLevel controls GPU power-saving vs performance trade-off on Gear VR.
  • Added ability to hold a named mutex throughout runtime.

Bug Fixes

  • Removed redundant axial deadzone handling from Xbox gamepad input.
  • Fixed OVRManager.monoscopic to display left eye buffer to both eyes and use center eye pose.
  • Application lifetime management now works, even without the Utilities.
  • Fixed crash when running VR apps with Rift disconnected.
  • OVRManager.isUserPresent now correctly reports proximity sensor output.
  • OVRManager.isHMDPresent now correctly reports Gear VR docking state.
  • We now prevent AFR SLI on NVIDIA hardware to avoid black screens/flicker.
  • Fixed drift between TimeWarp start matrix and view matrix.
  • Fixed crash when main monitor is on one adapter and Rift is on another.
  • Fixed crash on Mac due to OVRPlugin being uninitialized before first access.
  • Increased dead zone on OVRInput stick input to prevent drift.
  • Fixed handedness issue with angular head velocity on Rift.
  • Fixed handedness issue with rotation of OVROverlay quads.
  • Fixed crash in OVROverlay when using D3D 12 and compressed textures.
  • Fixed crashes due to thread synchronization checks on Gear VR.
  • Fixed loss of input handling while paused.
  • Fixed artifact in which bars appeared around mirror image when using occlusion mesh.
  • Fixed Android logcat spam about OVR_TW_SetDebugMode.
  • Gear VR logs now report VRAPI loader version, not SystemActivites version.
  • Statically linking MSVC runtime to avoid missing DLL dependencies.
  • Fixed black screen when HMD was reconnected: notifying Unity of display lost.

Known Issues

  • Volume control will be missing on mobile applications until the release of Mobile SDK 1.0.2. To restore OVRVolumeControl, please use an older copy of the Utilities.

Utilities 1.3.2 and OVRPlugin

Some versions of Unity require special handling to enable built-in VR support. This will not be required in future versions of Unity.

You must download and install OVRPlugin from our website if you are using the following Unity versions:

  • Unity v 5.3.3p3 through 5.3.4p4
  • Unity v 5.4.0b11 through 5.4.0b15

Unity v 5.3.3p3 through 5.3.4p4

To use Unity 5.3.3p3 through 5.3.4p4 with the Oculus Rift or Samsung Gear VR, you must download and install OVRPlugin for Unity 1.3.2, available here. Later versions of Unity 5.3.x may be used without special handling.

After you have downloaded and installed Unity, take these steps to install OVRPlugin:

  1. Close the Unity Editor if it is currently running.
  2. Navigate to C:\Program Files\Unity\Editor\Data\VR\oculus
  3. Delete all contents of the directory.
  4. Extract the OVRPlugin zip, open the folder 5.3\oculus, and copy all of its contents into C:\Program Files\Unity\Editor\Data\VR\oculus.

Unity v 5.4.0b11 through 5.4.0b15

To use Unity 5.4.0b11 through 5.4.0b15 with the Oculus Rift or Samsung Gear VR, you must download and install OVRPlugin for Unity 1.3.2, available here. Later versions of Unity 5.4.x may be used without special handling.

After you have downloaded and installed Unity, take these steps to install OVRPlugin:

  1. Close the Unity Editor if it is currently running.
  2. Navigate to C:\Program Files\Unity\Editor\Data\VR\Unity
  3. Delete all contents of the directory.
  4. Extract the OVRPlugin zip, open the folder 5.4\Unity, and copy all of its contents into C:\Program Files\Unity\Editor\Data\VR\Unity.

Utilities 1.3.0 and OVRPlugin

Oculus Utilities for Unity 5 version 1.3.0 is for use with Unity 5.3.4p1 only. Please be sure to update to this Unity version, available here: http://unity3d.com/unity/qa/patch-releases/5.3.4p1

To use Unity 5.3.4p1 with the Oculus Rift or Samsung Gear VR, you must download and install our OVRPlugin for Unity 1.3.0, available from our Downloads Page.

After you have downloaded and installed Unity 5.3.4p1, take these steps to install OVRPlugin:

  1. Close the Unity Editor if it is currently running.
  2. Navigate to the following directory: C:\Program Files\Unity\Editor\Data\VR\oculus
  3. Delete all contents of the directory.
  4. Extract the OVRPlugin zip and copy all files into the directory C:\Program Files\Unity\Editor\Data\VR\oculus.

0.1 Beta Utilities for Unity Release Notes

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Utilities for Unity.

Utilities for Unity 0.1.3.0 Beta

Overview of Major Changes

This document provides an overview of new features, improvements, and fixes included in the latest version of the Utilities for Unity 5.x. For information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version.

Utilities for Unity 0.1.3 extends OVRInput support to mobile. OVRInputControl and OVRGamepadController are now deprecated and will be removed in a future release.

Mobile input bindings are now automatically added to InputManager.asset if they do not already exist - it is no longer required to replace InputManager.asset with Oculus’ version. However, this asset is still provided for now to maintain legacy support for the deprecated OVRGamepadController and OVRInputControl scripts.

New Features

  • Default mobile input bindings are now programmatically generated when projects are imported if they do not already exist.
  • Replacing InputManager.asset is no longer required to enable gamepad support on mobile.

API Changes

  • Added mobile support OVRInput.
  • Deprecated OVRInputControl and OVRGamepadController.

Bug Fixes

  • Fixed mobile gamepad thumbstick deadzone/drift handling and axis scaling.
  • Fixed mobile gamepad support when multiple gamepads are paired.
  • Fixed mobile gamepad bindings for triggers, D-pad, thumbstick presses, etc.

Utilities for Unity 0.1.2.0 Beta

Overview of Major Changes

This version adds an alpha preview release of OVRInput, which provides a unified input API for accessing Oculus Touch and Microsoft Xbox controllers.

New Features

  • Redesigned input API for Oculus Touch controllers and Xbox gamepads.
  • Added h264 hardware-decoder plugin for Gear VR.
  • Added “face-locked” layer support to OVROverlay when parented to the camera.
  • Reduced latency in the pose used by the main thread for raycasting, etc.
  • Updated to PC SDK 0.7 and Mobile SDK 0.6.2.0.
  • Enabled VRSettings.renderScale on Gear VR.
  • Several minor performance optimizations.
  • SDKExamples
    • Restored MoviePlayerSample

API Changes

  • The Utilities package now requires Unity 5.1 or higher.
  • Added OVRInput API alpha. Refer to documentation for usage.
  • Exposed LeftHand/RightHand anchors for tracked controllers in OVRCameraRig.

Bug Fixes

  • Restored ability to toggle settings such as monoscopic rendering and position tracking.
  • HSWDismissed event is now correctly raised when the HSW is dismissed.
  • Fixed handedness of reported velocity and acceleration values.
  • OVRPlayerController now moves at a consistent speed regardless of scale.

Known Issues

  • Tearing in OS X: Editor preview and standalone players do not vsync properly, resulting in a vertical tear and/or judder on DK2.
  • When switching between a mobile application and System Activities screen, the back button becomes stuck in the "down" state. For more information and workarounds, please see Troubleshooting and Known Issues.

Utilities for Unity 0.1.0.0 Beta

Overview

This is the initial release of Oculus Utilities for Unity, for use with Unity versions 5.1.2 and later. The Utilities extend Unity's built-in virtual reality support with the following features:

  • Standard camera rig with head-tracked "anchors".
  • Detailed tracking information such as head acceleration, velocity, and latency and the IR tracker pose.
  • Control over the tracking method (positional, head model only, rotation-only).
  • Information about the current user's IPD, eye relief, and eye height.
  • Control over graphics performance/quality features such as monoscopic rendering, queue-ahead (PC-only), and chromatic aberration.
  • Experimental overlay support for high-quality text and video on a world-space quad.
  • First-person shooter-style locomotion.
  • Screen dimming on scene transitions.
  • Notification when out of positional tracking range.
  • Cross-platform gamepad support.
  • Debug overlay with real-time performance and latency graphs.
  • (Android only) Access to the Oculus platform UI.
  • (Android only) Performance and power management.

The Oculus Utilities for Unity expose largely the same API as the Oculus Unity Integration, but they offer all the benefits of Unity's built-in VR support:

  • Improved rendering efficiency with less redundant work performed for each eye.
  • Seamless integration with the Unity Editor, including in-Editor preview and direct mode support.
  • Improved stability and tighter integration with features like anti-aliasing and shadows.
  • Non-distorted monoscopic preview on the main monitor.
  • Oculus SDK 0.6.0.1 support (PC and mobile).

API Changes in 0.1.0 Beta

The following Unity API changes were made:

  • Unity 5.1.1p3 or higher is now required.
  • Some script functionality was replaced by UnityEngine.VR.
  • Added Crescent Bay support.
  • Removed Linux support, for now.
  • Removed OvrCapi, the low-level C# wrapper for LibOVR.
  • Removed Gear VR MediaSurface functionality. Use Mobile Movie Texture or similar.
  • The integration now uses a single stereo camera instead of two separate cameras for the left and right eyes.
  • Direct mode now works in the Editor.
  • To use VR, you must enable Player Settings -> Virtual Reality Supported.
  • DirectToRift.exe no longer applies.
  • Editor preview is now monoscopic and does not include lens correction.
  • The experimental overlay quad script OVROverlay also works on the PC.

Known Issues

  • Pitch, roll, and translation are off for the tracking reference frame in Unity 5.1.1, especially in apps with multiple scenes.
  • Mac OS X tearing. VSync is currently broken on the Mac, but works when you build for Gear VR.
  • Performance loss. CPU utilization may be slightly higher than in previous versions of Unity.
  • OVRPlayerController might end up in an unexpected rotation after OVRDisplay.RecenterPose() is called. To fix it, call RecenterPose() again.

0.6 PC Unity Integration Release Notes

This document provides an overview of new features, improvements, and fixes included in the Oculus Unity Integration that shipped with 0.6 of the Oculus PC SDK.

PC Unity Integration 0.6.0.0

New Features

  • Disabled eye texture anti-aliasing when using deferred rendering. This fixes the blackscreen issue.
  • Eliminated the need for the DirectToRift.exe in Unity 4.6.3p2 and later.
  • Removed the hard dependency from the Oculus runtime. Apps now render in mono without tracking when VR isn't present.

0.5 Mobile Unity Integration Release Notes

This document provides an overview of new features, improvements, and fixes included in the Oculus Unity Integration that shipped with version 0.5 of the Oculus Mobile SDK.

Mobile Unity Integration 0.5.1

Overview of Major Changes

The most significant change in 0.5.1 is to System Activities event handling in Unity. The 0.5.0 code for handling System Activities events in Unity was doing heap allocations each frame. Though this was not a leak, it would cause garbage collection to trigger much more frequently. Even in simple applications, garbage collection routinely takes 1 to 2 milliseconds. In applications that were already close to dropping below 60 Hz, the increased garbage collection frequency could cause notable performance drops. The event handling now uses a single buffer allocated at start up.

As with Mobile SDK v 0.5.0, Unity developers using this SDK version must install the Oculus Runtime for Windows or OS X. This requirement will be addressed in a future release of the SDK.

Bug Fixes

  • Rework System Activities Event handling to prevent any per-frame allocations that could trigger Garbage Collector.

Known Issues

  • For use with the Mobile SDK, we recommend Unity versions 4.6.3. The Mobile SDK is compatible with Unity 5.0.1p2, which addresses a problem with OpenGL ES 3.0, but there is still a known Android ION memory leak. Please check back for updates.

Mobile Unity Integration 0.5.0

Overview of Major Changes

The Mobile Unity Integration is now synced with the Oculus PC SDK 0.5.0.1 Beta. Please ensure you have installed the corresponding 0.5.0.1 Oculus runtime; it can be found at the following location: https://developer.oculus.com/downloads/

VrPlatform entitlement checking is now disabled by default in Unity; handling for native development is unchanged. If your application requires this feature, please refer to the Mobile SDK Documentation for information on how to enable entitlement checking.

New Features

w
  • Synced with the Oculus PC SDK 0.5.0.1 Beta.
  • VrPlatform entitlement checking is now disabled by default.

Bug Fixes

  • Health and Safety Warning no longer displays in editor Play Mode if a DK2 is not attached.

Known Issues

  • For use with the Mobile SDK, we recommend Unity versions 4.6.3, which includes Android 5.0 - Lollipop support as well as important Android bug fixes. While the Mobile SDK is compatible with Unity 5.0.0p2 and higher, several issues are still known to exist, including an Android ION memory leak and compatibility issues with OpenGL ES 3.0. Please check back for updates.

Mobile Unity Integration 0.5.0

Overview of Major Changes

The Mobile Unity Integration is now synced with the Oculus PC SDK 0.5.0.1 Beta. Please ensure you have installed the corresponding 0.5.0.1 Oculus runtime; it can be found at the following location: https://developer.oculus.com/downloads/

VrPlatform entitlement checking is now disabled by default in Unity; handling for native development is unchanged. If your application requires this feature, please refer to the Mobile SDK Documentation for information on how to enable entitlement checking.

New Features

  • Synced with the Oculus PC SDK 0.5.0.1 Beta.
  • VrPlatform entitlement checking is now disabled by default.

Bug Fixes

  • Health and Safety Warning no longer displays in editor Play Mode if a DK2 is not attached.

Known Issues

  • For use with the Mobile SDK, we recommend Unity versions 4.6.3, which includes Android 5.0 - Lollipop support as well as important Android bug fixes. While the Mobile SDK is compatible with Unity 5.0.0p2 and higher, several issues are still known to exist, including an Android ION memory leak and compatibility issues with OpenGL ES 3.0. Please check back for updates.

0.4 Mobile Unity Integration Release Notes

This document provides an overview of new features, improvements, and fixes included in the Oculus Unity Integration that shipped with version 0.4 of the Oculus Mobile SDK.

Mobile Unity Integration 0.4.3

New Features

  • New Mobile Unity Integration Based on Oculus PC SDK 0.4.4

Mobile Unity Integration 0.4.2

Overview of Major Changes

If you are developing with Unity, we recommend updating to Unity 4.6.1, which contains Android 5.0 – Lollipop support.

We would like to highlight the inclusion of the new Mobile Unity Integration with full DK2 support based on the Oculus PC SDK 0.4.4. As this is a significant API refactor, please refer to the Unity Development Guide: Migrating From Earlier Versions section for information on how to upgrade projects built with previous versions of the Mobile Unity Integration.

API Changes

  • Fix for camera height discrepancies between the Editor and Gear VR device.
  • Moonlight Debug Util class names now prefixed with OVR to prevent namespace pollution.
  • Provide callback for configuring VR Mode Parms on OVRCameraController; see OVRModeParms.cs for an example.

Mobile Unity Integration 0.4.1

Overview of Major Changes

Added support for Android 5.0 (Lollipop) and Unity Free.

New Features

  • Added Unity Free support for Gear VR developers.

Mobile Unity Integration 0.4.0

Overview of Major Changes

First public release of the Oculus Mobile SDK.

Bug Fixes

  • Unity vignette rendering updated to match native (slightly increases effective FOV).
  • Unity volume pop-up distance to match native.

Migrating From Earlier Versions

The 0.4.3+ Unity Integration’s API is significantly different from prior versions. This section will help you upgrade.

API Changes

The following are changes to Unity components:

Unity Components
OVRDevice → OVRManager Unity foundation singleton.
OVRCameraController → OVRCameraRig Performs tracking and stereo rendering.
OVRCamera Removed. Use eye anchor Transforms instead.

The following are changes to helper classes:

Helper Classes
OVRDisplay HMD pose and rendering status.
OVRTracker Infrared tracking camera pose and status.
OVR.Hmd → Ovr.Hmd Pure C# wrapper for LibOVR.

The following are changes to events:

Events
HMD added/removed Fired from OVRCameraRig.Update() on HMD connect and disconnect.
Tracking acquired/lost Fired from OVRCameraRig.Update() when entering and exiting camera view.
HSWDismissed Fired from OVRCameraRig.Update() when the Health and Safety Warning is no longer visible.
Get/Set*(ref *) methods Replaced by properties.

Behavior Changes

  • OVRCameraRig’s position is always the initial center eye position.
  • Eye anchor Transforms are tracked in OVRCameraRig’s local space.
  • OVRPlayerController’s position is always at the user’s feet.
  • IPD and FOV are fully determined by profile (PC only).
  • Layered rendering: multiple OVRCameraRigs are fully supported (not advised for mobile).
  • OVRCameraRig.*EyeAnchor Transforms give the relevant poses.

Upgrade Procedure

To upgrade, follow these steps:

  1. Ensure you didn’t modify the structure of the OVRCameraController prefab. If your eye cameras are on Game Objects named “CameraLeft” and “CameraRight” which are children of the OVRCameraController Game Object (the default), then the prefab should cleanly upgrade to OVRCameraRig and continue to work properly with the new integration.
  2. Write down or take a screenshot of your settings from the inspectors for OVRCameraController, OVRPlayerController, and OVRDevice. You will have to re-apply them later.
  3. Remove the old integration by deleting the following from your project:
    • OVR folder
    • OVR Internal folder (if applicable)
    • Any file in the Plugins folder with “Oculus” or “OVR” in the name
    • Android-specific assets in the Plugins/Android folder, including: vrlib.jar, libOculusPlugin.so, res/raw and res/values folders
  4. Import the new integration.
  5. Click Assets -> Import Package -> Custom Package…
  6. Open OculusUnityIntegration.unitypackage
  7. Click Import All.
  8. Fix any compiler errors in your scripts. Refer to the API changes described above. Note that the substitution of prefabs does not take place until after all script compile errors have been fixed.
  9. Re-apply your previous settings to OVRCameraRig, OVRPlayerController, and OVRManager. Note that the runtime camera positions have been adjusted to better match the camera positions set in the Unity editor. If this is undesired, you can get back to the previous positions by adding a small offset to your camera:
    1. Adjust the camera's y-position.
      1. If you previously used an OVRCameraController without an OVRPlayerController, add 0.15 to the camera y-position.
      2. If you previously used an OVRPlayerController with Use Player Eye Height checked on its OVRCameraContoller, then you have two options. You may either (1) rely on the new default player eye-height (which has changed from 1.85 to 1.675); or (2) uncheck Use Profile Data on the converted OVRPlayerController and then manually set the height of the OVRCameraRig to 1.85 by setting its y-position. Note that if you decide to go with (1), then this height should be expected to change when profile customization is added with a later release.
      3. If you previously used an OVRPlayerController with Use Player Eye Height unchecked on its OVRCameraContoller, then be sure uncheck Use Profile Data on your converted OVRPlayerController. Then, add 0.15 to the y-position of the converted OVRCameraController.
    2. Adjust the camera's x/z-position. If you previously used an OVRCameraController without an OVRPlayerController, add 0.09 to the camera z-position relative to its y rotation (i.e. +0.09 to z if it has 0 y-rotation, -0.09 to z if it has 180 y-rotation, +0.09 to x if it has 90 y-rotation, -0.09 to x if it has 270 y-rotation). If you previously used an OVRPlayerController, no action is needed.
  10. Re-start Unity

Common Script Conversions

OVRCameraController -> OVRCameraRig
   cameraController.GetCameraPosition() -> cameraRig.rightEyeAnchor.position
   cameraController.GetCameraOrientation() -> cameraRig.rightEyeAnchor.rotation
   cameraController.NearClipPlane -> cameraRig.rightEyeCamera.nearClipPlane
   cameraController.FarClipPlane -> cameraRig.rightEyeCamera.farClipPlane
   cameraController.GetCamera() -> cameraRig.rightEyeCamera
   
   ----------------------------------------------------------------------
   if ( cameraController.GetCameraForward( ref cameraForward ) &&
   cameraController.GetCameraPosition( ref cameraPosition ) ) 
   {
   ...
   
   to
   
   if (OVRManager.display.isPresent)
   {
   
        // get the camera forward vector and position
        Vector3 cameraPosition = cameraController.centerEyeAnchor.position;
        Vector3 cameraForward = cameraController.centerEyeAnchor.forward;
   ...
  ----------------------------------------------------------------------
   
   OVRDevice.ResetOrientation();
   to
   OVRManager.display.RecenterPose();
   
   ----------------------------------------------------------------------
   
   cameraController.ReturnToLauncher();
   
   to
   
   OVRManager.instance.ReturnToLauncher();
   
   ----------------------------------------------------------------------
   
   OVRDevice.GetBatteryTemperature();
   OVRDevice.GetBatteryLevel();
   
   to
   
   OVRManager.batteryTemperature
   OVRManager.batteryLevel
   
   ----------------------------------------------------------------------
   
   OrientationOffset
   
   Set rotation on the TrackingSpace game object instead.
   
   ----------------------------------------------------------------------
   
   FollowOrientation
   
   ----------------------------------------------------------------------

   FollowOrientation is no longer necessary since OVRCameraRig applies tracking 
   in local space. You are free to script the rig’s pose or make it a child of 
   another Game Object.

Oculus Changes in Unity

This document provides a non-exhaustive list of changes to Oculus support in Unity. For more information on first-party changes to Unity VR support for Oculus, see the Unity Release Notes for the appropriate version.

Oculus Changes in Unity v 5.3.5p2 and 5.4.0b21

Overview of Major Changes

Built-In Audio Spatialization

Unity Beta versions v 5.4.0b16 and later feature a basic version of our Oculus Native Spatializer Plugin for Unity 5 (ONSP). It makes it trivially easy to add basic spatialization (HRTF transforms) to audio point sources in your Unity project. For more information, see First-Party Audio Spatialization (Beta) in our Oculus Native Spatializer for Unity guide.

New Features

  • If you assign Unity’s VR splash image, it will display as a world-locked quad using Asynchronous TimeWarp, which allows full position-tracked rendering while Unity prioritizes loading. To improve the user’s experience, the splash screen appears within 0.5s of app launch.

Bug Fixes

  • Fixed a number of OpenGL ES errors, such as EGL_BAD_ALLOC due to implicit management of Unity’s WindowSurface.
  • Fixed extra 180 degree yaw rotation on all OVROverlay quads.
  • Fixed a few cases where D3D texture references were not released.
  • Fixed start-up crash in Unity 4 in some applications.

Unity Sample Framework Release Notes

This section describes changes for each version release of the Unity Sample Framework Unity Project.

1.12 Unity Sample Framework

1.12.0

This version of the Oculus Sample Framework for Unity 5 pulls in the most recent Avatar SDK and Utilities for Unity versions. Importing the Avatar SDK and Utilities for Unity 5 separately is not required. It is compatible with Unity 5.4 and up - please check Compatibility and Version Requirements for up-to-date Unity version recommendations.

For complete instructions on downloading and using the Sample Framework, see Unity Sample Framework in our developer documentation.

New Features

  • Added OverlayUIDemo, which demonstrates creating a UI with a VR Compositor Layer to improve image quality and anti-aliasing. Includes a quad overlay for Rift, and a quad and a cylinder overlay for mobile.

Known Issues

  • In Oculus Rift builds, Oculus Remote support is currently limited to opening and closing the menu system.
  • Sample Framework Android builds use a custom manifest and are not visible from Applications, and cannot be launched from Oculus Home or the Android Application Launcher. To launch:
    1. Install the APK to your phone.
    2. Open Settings > Applications > Application Manager > Gear VR Service.
    3. Select Storage.
    4. Select Manage Storage.
    5. Toggle Add icon to app list to On.
    6. Close Settings.
    7. Open Apps.
    8. Select Gear VR Service.
    9. Select Oculus Sample Framework to launch.

1.11 Unity Sample Framework

1.11.0

The Oculus Unity Sample Framework assists developers in implementing Unity applications by providing sample scenes and guidelines for common VR-specific features such as hand presence, crosshairs, driving, and first-person movement.

This download includes a Unity Package of the Sample Framework. VR applications of the Sample Framework are also available for the Oculus Rift from our Downloads page, and for the Samsung Gear VR from the Gallery section of the Oculus Store.

This version of the Oculus Sample Framework for Unity 5 pulls in the most recent Avatar SDK and Utilities for Unity versions. Importing the Avatar SDK and Utilities for Unity 5 separately is not required. It is compatible with Unity 5.4 and up - please check Compatibility and Version Requirements for up-to-date Unity version recommendations.

For complete instructions on downloading and using the Sample Framework, see Unity Sample Framework in our developer documentation.

New Features

  • Added Hands category with three new scenes.
    • AvatarWithGrab uses the Unity Avatar SDK and the Utilities for Unity scripts OVRGrabber and OVRGrabbable to illustrate hands presence with Touch. Pick up and throw blocks from a table using the Touch grip buttons.
    • CustomControllers is a simple sample displaying tracked and animated Touch models in a scene.
    • CustomHands uses low-resolution custom hand models and the Utilities for Unity scripts OVRGrabber and OVRGrabbable to illustrate hands presence with Touch. Pick up and throw blocks from a table using the Touch grip buttons. May be used as a reference for implementing your own hand models.
  • Added Touch support.
  • The Sample Framework now pulls in the Avatar SDK, which is also available separately from our Downloads page.
  • The project download now ships as a unitypackage rather than a zipped Unity project.

Known Issues

  • In Oculus Rift builds, Oculus Remote support is currently limited to opening and closing the menu system.
  • Sample Framework Android builds use a custom manifest and are not visible from Applications, and cannot be launched from Oculus Home or the Android Application Launcher. To launch:
    1. Install the APK to your phone.
    2. Open Settings > Applications > Application Manager > Gear VR Service.
    3. Select Storage.
    4. Select Manage Storage.
    5. Toggle Add icon to app list to On.
    6. Close Settings.
    7. Open Apps.
    8. Select Gear VR Service.
    9. Select Oculus Sample Framework to launch.

1.5 Unity Sample Framework

1.5.1

The Oculus Unity Sample Framework assists developers in implementing Unity applications by providing sample scenes and guidelines for common VR-specific features such as crosshairs, driving, and first-person movement.

This download includes a Unity Project of the Sample Framework. VR applications of the Sample Framework are also available for the Oculus Rift from our Downloads page, and for the Samsung Gear VR from the Gallery section of the Oculus Store.

This version of the Oculus Sample Framework for Unity 5 pulls in Utilities for Unity version 1.9. Importing Utilities for Unity 5 separately is not required. It is compatible with Unity 5.3 and up - please check Compatibility and Version Requirements for up-to-date Unity version recommendations.

For complete instructions on downloading and using the Sample Framework, see Unity Sample Framework in our developer documentation.

New Features

  • Added two Mono Optimization sample scenes in which near content is rendered stereoscopically and distant content is rendered monoscopically. Depending on the scene, this approach may produce significant rendering performance improvements. For a detailed explanation, see Hybrid Mono Rendering in UE4 and Unity in our Developer Blog.

Known Issues

  • In Oculus Rift builds, Oculus Remote support is currently limited to opening and closing the menu system.
  • Sample Framework Android builds use a custom manifest and are not visible from Applications, and cannot be launched from Oculus Home or the Android Application Launcher. To launch:
    1. Install the APK to your phone.
    2. Open Settings > Applications > Application Manager > Gear VR Service.
    3. Select Storage.
    4. Select Manage Storage.
    5. Toggle Add icon to app list to On.
    6. Close Settings.
    7. Open Apps.
    8. Select Gear VR Service.
    9. Select Oculus Sample Framework to launch.

1.5.0

The Oculus Unity Sample Framework assists developers in implementing Unity applications by providing sample scenes and guidelines for common VR-specific features such as crosshairs, driving, and first-person movement.

This download includes a Unity Project of the Sample Framework. VR applications of the Sample Framework are also available for the Oculus Rift from our Downloads page, and for the Samsung Gear VR from the Gallery Apps section of the Oculus Store.

This version of the Oculus Sample Framework for Unity 5 pulls in Utilities for Unity version 1.5. Importing Utilities for Unity 5 separately is no longer required. It is compatible with Unity 5.3 and up - please check Compatibility and Version Requirements for up-to-date Unity version recommendations.

For complete instructions on downloading and using the Sample Framework, see Unity Sample Framework in our developer documentation.

New Features

  • Added Movie Player, Per-Eye Cameras, Multiple Cameras, and Render Frame Rate scenes.
  • Reorganized in-VR scenes list structure to de-clutter the scenes menu.
  • Now includes Utilities for Unity 5 v 1.5; separately importing the Utilities unitypackage is no longer required.

Known Issues

  • In Oculus Rift builds, Oculus Remote support is currently limited to opening and closing the menu system.

1.3 Unity Sample Framework

This version of the Oculus Sample Framework for Unity 5 is for use with our Utilities for Unity version 1.3 and compatible Unity versions, and supports the Oculus Rift CV1 runtime. Please check Compatibility and Version Requirements for up-to-date Unity version recommendations.

The Oculus Unity Sample Framework assists developers in implementing Unity applications by providing sample scenes and guidelines for common VR-specific features such as crosshairs, driving, and first-person movement. The Sample Framework can guide developers in producing reliable, comfortable applications and avoiding common mistakes.

The Oculus Unity Sample Framework consists of a Unity project as well as application binaries for playing the sample scenes in VR. Sample scenes are navigated and controlled in-app with a simple UI, which also provides explanatory notes.

This download includes a Unity Project of the Sample Framework. VR applications of the Sample Framework are also available for the Oculus Rift/DK2 from our Downloads page, and for the Samsung Gear VR from the Gallery Apps section of the Oculus Store.

For complete instructions on downloading and using the Sample Framework, see Unity Sample Framework in our developer documentation.

Loading…