cancel
Showing results for 
Search instead for 
Did you mean: 

Oculus Unity Integration - v1.36 (04/23/19)

mouse_bear
Retired Support

Version 1.36 of our integration for Unity has been released!

The Oculus Integration for Unity package adds scripts, prefabs, samples, and other resources to supplement Unity’s built-in support. The package includes an interface for controlling VR camera behavior, a first-person control prefab, a unified input API for controllers, advanced rendering features, object-grabbing and haptics scripts for Touch, debugging tools, and more. For more information, see our Unity Getting Started Guide.

You can grab the latest version of our Unity Integration here (through the Unity Asset Store): https://assetstore.unity.com/packages/tools/integration/oculus-integration-82022

More information, as well as general known issues with Unity, about this release can be found here.

1.36 Update Notes

New Features

  • The Oculus Integration for Unity (not including the Avatars components) has been updated to support ARM64 development.

Integration Changes

  • Updated the Oculus Unity Integration to 1.36, including:
    • Updated the Avatars integration to 1.36
    • Updated the Platform integration to 1.36
    • Updated the Audio integration to 1.36
    • Updated the LipSync integration to 1.36

Bug Fixes

  • Fixed an issue where OVRPlugin.systemDisplayFrequenciesAvailable returned an empty array when using a IL2CPP backend.
  • Updates to reduce controller pose latency.
  • Fixed an issue in Mixed Reality Capture where the virtual world rendered a few frames behind the real world when the user’s headset is moving.

API Updates

  • Deprecated the OVRBoundary.SetLookAndFeel() and OVRBoundary.ResetLookAndFeel() APIs.

Known Issues

    All Unity 2018.2 versions

    • (Mobile) You'll need to either switch the AndroidBuildSystem to internal or export a Gradle project and modify the SigningConfig in the build.gradle file to include v1SigningEnabled=true, v2SigningEnabled=false.

    2018.2.20f1

    • (Mobile) Some game objects may appear darker when loaded in 2018.2.20f1. To work around this issue, load the project in another version of Unity, like 2018.2.19.
    The thread for the previous version (v1.35) can be found here: https://forums.oculusvr.com/developer/discussion/73914/oculus-integration-for-unity-v1-35-02-28-19
    17 REPLIES 17

    tommosaur
    Protege
    regarding the filesize issue, a suggestion to the oculus fellas: i like it that there is just the oculus integration which has all in it, so one only has to download and use one package for all platforms, but i think as it grows bigger maybe you could do something like in the settings inspector panel one could toggle off features one doesn't use for this project and then those those things don't get added to the build.
    (For example various post processing packages on the asset store like Beautify allow doing things like that)

    Schneider21
    Expert Protege
    @NinjaGaijin The documentation for the Unity integration package is crazy out of date now. Can we look forward to that being updated to reflect the actual contents of the package anytime soon?

    For example, there's an OVRControllerPrefab that isn't mentioned anywhere in the docs, and the same for the attached OVRControllerHelper component found on it. That script has a "Controller" property with the following options:
    • Active
    • All
    • None
    • L Touch
    • R Touch
    • Touch
    • Remote
    • Gamepad
    • L Tracked Remote
    • R Tracked Remote
    • Touchpad
    And it's not really clear what the difference is between several of those, nor which is the correct to use. For that matter, there doesn't seem to be a definitive guide for adding tracked controllers in any case, which feels like a very basic task that would be perfectly handled by a prefab.

    mouse_bear
    Retired Support
    @Schneider21 Thanks for the heads up - could you PM me links to the exact documentation you're referring to? This way, I can reach out to the docs team.

    @tommosaur I appreciate the feedback about the Oculus Integration, I've passed it along to the proper team to review.

    tommosaur
    Protege
    thanks @NinjaGaijin  😃

    justin-observr
    Honored Guest
    I noticed there's no enum for the Rift S in OVRPlugin.SystemHeadset. Will this be added in a future version?

    vrationbarile
    Honored Guest
    RESOLVED: I'm keeping this up here in case anyone runs across the same issue.

    I had overlooked the warning (not error, mind you!) that Vulkan Graphics API is not supported in XR.  Vulcan is added by default in a new Unity project in 2019.  Better than the subtle warning, it would be nice if a popup prompted the user to remove Vulcan when the XR Support checkbox is checked in the Player Settings.

    Thanks @NinjaGaijin  for offering your support... I hadn't caught it until I uploaded screenshots.
     
    -----------------------------------

    I can't even get a boilerplate build (just an head-tracking skybox) to work in Unity 2019.1f2.  Once I plug Samsung Galaxy S7 into my GearVR it says "Gear VR has quit unexpectedly".  The exact same build works fine in Unity 2018.3.
    Any suggestions @NinjaGaijin ?

    Here are some screenshots of my settings:
    m58dxoauscrf.jpg5fdvney2p7d3.jpg

    Schneider21
    Expert Protege
    @NinjaGaijin Do you guys have an ETA for when the dev docs will be updated? As in, should we be expecting them tomorrow around the same time the system is in people's hands, or will it be sometime later in the week? Or later than that?

    Shy_ELC
    Honored Guest
    For anyone still waiting for the docs to be updated, you can get started with input/controller positioning by doing the following:

    1) Pop an OVRCameraRig prefab into your scene
    2) Locate the OculusTouchForQuestAndRiftS_* Left/Right controller models in the Project view
    3) Pop each controller model underneath the appropriate *ControllerAnchor node in the OVRCameraRig prefab's hierarchy

    It's best to skip the OVRControllerPrefab entirely, as all it currently does is load all possible controller models into memory and then disable all but the one controller being used for that one hand - which means two of these prefabs will need to be loaded, giving your app multiple unused controller model instances, and duplicates of the instances your app does use, to clog up the device memory.

    Edit: Here's a screenshot of the scene hierarchy with a functioning setup:
    u1l13t93ibry.png