Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
florian.buchholz.1988's avatar
florian.buchholz.1988
Expert Protege
2 years ago
Solved

Local Space can not be loaded from Quest to Unity

I am trying to load a Scene / Room from a Quest 3 into unity. The objects are being loaded, but their transform isn't.

This seems to happen since Update 60. MetaStoreHelp Is this a known error and do you know a workaround?


[OVRPlugin] [XRCMD][failure] [XR_ERROR_HANDLE_INVALID]: xrLocateSpace(*(XrSpace*)space, baseSpace, ToXrTime(GetTimeInSeconds()), &spaceLocation), arvr\projects\integrations\OVRPlugin\Src\Util\CompositorOpenXR.cpp:11831 (arvr\projects\integrations\OVRPlugin\Src\Util\CompositorOpenXR.h:302)

OVRSceneAnchor:Initialize (OVRAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneAnchor.cs:142)
OVRSceneManager:InstantiateSceneAnchor (OVRAnchor,OVRSceneAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneManager.cs:995)
OVRSceneRoom:OnLocalizationCompleted (bool,OVRAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneRoom.cs:176)
OVRTask`1/CallbackWithState`1<bool, OVRAnchor>:Invoke (bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:469)
OVRTask`1/CallbackWithState`1<bool, OVRAnchor>:Invoke (System.Guid,bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:454)
OVRTask`1<bool>:SetResult (bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:206)
OVRManager:UpdateHMDEvents () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2767)
OVRManager:Update () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2723)

And because of that:
[OVRSceneAnchor] [9321a5b7-80ae-b131-9fb5-2ef32da70e08] TryLocateSpace failed. The entity may have the wrong initial transform.
UnityEngine.Debug:LogWarning (object,UnityEngine.Object)
OVRSceneManager/Development:LogWarning (string,string,UnityEngine.GameObject) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneManager.cs:354)
OVRSceneAnchor:Initialize (OVRAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneAnchor.cs:150)
OVRSceneManager:InstantiateSceneAnchor (OVRAnchor,OVRSceneAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneManager.cs:995)
OVRSceneRoom:OnLocalizationCompleted (bool,OVRAnchor) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRSceneRoom.cs:176)
OVRTask`1/CallbackWithState`1<bool, OVRAnchor>:Invoke (bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:469)
OVRTask`1/CallbackWithState`1<bool, OVRAnchor>:Invoke (System.Guid,bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:454)
OVRTask`1<bool>:SetResult (bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:206)
OVRManager:UpdateHMDEvents () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2767)
OVRManager:Update () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2723)

Any ideas?

  • And you want to know what? I also found the real problem!

    It's the HTC Vive Business Streaming software! No wonder nobody else has this issue, because who would work with HTC and Meta at the same time? But right after installing the "Vive Business Streaming", I get the same issue, so it seems like it interferes with the OVR / OpenXR - version / level / software / sdk / whatever on a fundementally level.

    The reason I installed that software a while ago was because I wanted to use the new Ultimate Trackers in my application, but on a different system, without any HTC-Headset. Who would have thought, that this software also interferes with OVR...


    Uninstalling THAT software and restarting resolves the issue!

10 Replies

Replies have been turned off for this discussion
  • What do you mean by "the object is being loaded, but the transform isn't"? I'm assuming that you have a OVRSceneManager and loader script in the scene, and you have setup prefabs for your scene objects and THESE are what are getting loaded, correct? Do your prefabs have "OVRSceneAnchor" scripts on them? If not, that might be the reason they aren't keeping position in your room space.

    Also - you have enabled "Scene Support" in your OVRManager settings, yes?

    • florian.buchholz.1988's avatar
      florian.buchholz.1988
      Expert Protege

      Hi Jeff,
      yes, I have the OVRSceneManager and Loader in the scene. To be exact, I have the same issue with the Basic Example Scene of the new "Mixed Reality Utility Kit", that was introduced in V.60. And since the Gameobjects are being imported from the Meta Quest directly, all the objects then have an OVRSceneAnchor attached by design. Otherwise, I wouldn't get the warning, triggered by the OVRSceneAnchor:

      "[OVRSceneAnchor] [9321a5b7-80ae-b131-9fb5-2ef32da70e08] TryLocateSpace failed."

      So, that is not the issue. Have you tried importing this data from the Quest into Unity yourself?

      Just to be clear, the Transform works fine as a Build in the Quest, so it seems to fail while transferring that Transform-Data into Unity.

      And yes, Scene Support is enabled as well as any other Settings on the Quest 3, the Oculus Application for Oculus Link as well as any other developer mode settings, sharing point cloud data and so on and on.

      Like I said, even the basic example fails to load the position / Transform data of the imported Room Model data.
      I am not talking about Gameobjects I created myself and added the scripts myself. I import the room from the Quest, that I set there with the room setup option on the Quest. I can see all the imported Gameobjects of that predefined room, they just don't have any transform-data (apart from (0,0,0)).

      So if you know any other ideas that might resolve that issue (maybe a deeply hidden setting?) I am open to new ideas.

      MetaStoreHelpYou guys have any more insight into that issue?

      Greetings

      Florian

  • I can add to the problem that it seems to be unique to my current PC-Setup. The Quest works fine on other PCs and with the same project. I reinstalled Oculus Desktop and Unity, even switched Unity versions. that didn't help.

    I can only use one USB-C port, so I can not switch out that.

    I am totally at a loss

  • I now removed everything that had to do something with oculus, Meta, and Unity in Safe Mode (Windows 10), including all files in AppData and also cleaned out the registry. I then reinstalled everything and created a brand new Unity project with only the Meta SDK and MR Utility Toolkit Basic Example. The error persists.

    Setup:
    Dell Precision 3660
    RTX 4090
    13th Gen Intel(R) Core(TM) i9-13900K 3.00 GHz
    32.0 GB DDR5

    Headset connected over USB-C, but it also doesn't work over AirLink.

    Any ideas other than totally reinstalling Windows 10?  MetaStoreHelp 

    [OVRPlugin] [XRCMD][failure] [XR_ERROR_HANDLE_INVALID]: xrLocateSpace(*(XrSpace*)space, baseSpace, ToXrTime(GetTimeInSeconds()), &spaceLocation), arvr\projects\integrations\OVRPlugin\Src\Util\CompositorOpenXR.cpp:11831 (arvr\projects\integrations\OVRPlugin\Src\Util\CompositorOpenXR.h:302)
    UnityEngine.Debug:LogWarning (object)
    OVRManager:OVRPluginLogCallback (OVRPlugin/LogLevel,intptr,int) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:1984)
    OVRPlugin:TryLocateSpace (ulong,OVRPlugin/TrackingOrigin,OVRPlugin/Posef&,OVRPlugin/SpaceLocationFlags&) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRPlugin.cs:10180)
    OVRLocatable:TryGetSceneAnchorPose (OVRLocatable/TrackingSpacePose&) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRAnchor/OVRAnchorComponents/OVRLocatable.cs:170)
    Meta.XR.MRUtilityKit.MRUK/<LoadSceneFromDevice>d__31:MoveNext () (at ./Library/PackageCache/com.meta.xr.mrutilitykit@60.0.0/Core/Scripts/MRUK.cs:368)
    System.Runtime.CompilerServices.AsyncMethodBuilderCore/MoveNextRunner:Run ()
    OVRTask`1<bool>:SetResult (bool) (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/Util/Async/OVRTask.cs:216)
    OVRManager:UpdateHMDEvents () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2767)
    OVRManager:Update () (at ./Library/PackageCache/com.meta.xr.sdk.core@60.0.0/Scripts/OVRManager.cs:2723

  • FYI: I reinstalled Windows. The bug is gone now, but I did not figure out the reason. My best guess is right now the Meta Quest Developer Hub and some settings there.

    • JeffNik's avatar
      JeffNik
      MVP

      Wow - surprising that you had to go to such extremes to get it to work. Glad to hear you finally resolved the issue, though.

      • florian.buchholz.1988's avatar
        florian.buchholz.1988
        Expert Protege

        And you want to know what? I also found the real problem!

        It's the HTC Vive Business Streaming software! No wonder nobody else has this issue, because who would work with HTC and Meta at the same time? But right after installing the "Vive Business Streaming", I get the same issue, so it seems like it interferes with the OVR / OpenXR - version / level / software / sdk / whatever on a fundementally level.

        The reason I installed that software a while ago was because I wanted to use the new Ultimate Trackers in my application, but on a different system, without any HTC-Headset. Who would have thought, that this software also interferes with OVR...


        Uninstalling THAT software and restarting resolves the issue!

  • invirt's avatar
    invirt
    Start Partner

    Thanks Florian!
    Deinstalling Vive Business Streaming made access to the room model via Quest Link to work for me too!!.