Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
Sandstedt's avatar
Sandstedt
Start Partner
2 years ago

MRUK: Error loading Scene Room Layout

Got this error from MRUKRoom.cs: 
`Wall anchor with UUID xxxxxxxxxxxx not found!`

Value was null.

Happend after rescanning my room.

Anyone has an idéa how to solve this?

Have tried deleting the space, creating a new one with another name, deleting and reinstalling the game.

Uses Meta MR Utility Kit v65

Edit: Updated to v66 v69 (Meta XR All-in-One SDK), but same error, even though the changelog says it should have fixed it.

11 Replies

Replies have been turned off for this discussion
  • Worked when switching physical room (tried at home instead of in my office). Maybe has something to do with anchors being saved on the cloud. Think they are invalidated after 24 hrs. Will see.

    Update: It didn't work. Same error still.

    • Sandstedt's avatar
      Sandstedt
      Start Partner

      Yeah sorry, was a bit fast. Tried now, and the same error is present.

  • The wierd thing is that I only get this error while trying on a specific location. And this location has a partly tilted roof. So half of the room has a flat roof, and half of the room has a tilted roof/ceiling. Maybe that the Room API can't handle that kind of room layout?

  • I have started getting this error in my other location too after scanning a second room (living room and main bedroom that are next to each other). Deleted the Bedroom to try and see if that solved it, but it didn't.

  • i have now the error again on my quest3 headset (was on my quest2 before).

    - it first started with an error message where the room could not be saved, duing scanning (this was a big office openspace, with large windows, and the room was cut with invisible walls)
    - the ghost room was loaded by MRUK at that time, in like 5 instances (i had multiple times the error during scan, so it may have created this ghost room multiple times too - did you got this message at the end of your scan ?)
    - exactly 24 hours later ( or maybe it's due to some reboot, not sure), i now can't load the room with MRUK and the null wall message.

    seems i'll go with another factory reset

  • i've found another clear button for the space and spatial anchors : 
    in your headset go to settings > device permissions > privacy and settings > clear physical space history.
    this seems to clear more than just the space setup, and i was able to launch again.

     

     

  • gillesnovelab Thanks for the tips! Will try in the future. I manage to solve it for my use-case in a not so future proof way. But still.

    First I copied the MRUK package (com.meta.xr.mrutilitykit@67.0.0) from \Library\PackageCache to my Assets folder. (notice, this will prevent you from ever update the MRUK again, so this is only a temporary solution unity Meta fixes this bug).

    Then I manually updated the Packages/manifest.json from Unitys all-in-one package, to include all packages I need with it's dependencies (ex MRUK requires Meta AI)

    From:

    "com.meta.xr.mrutilitykit": "67.0.0",
    "com.meta.xr.sdk.all": "67.0.0",
    "com.meta.xr.sdk.core": "67.0.0",

    To:

    "com.meta.xr.sdk.core": "67.0.0",
    "com.meta.xr.sdk.audio": "67.0.0",
    "com.meta.xr.sdk.interaction": "67.0.0",
    "com.meta.xr.sdk.interaction.ovr": "67.0.1",
    "com.meta.xr.sdk.platform": "67.0.0",
    "com.meta.xr.sdk.voice": "67.0.0",
    "com.meta.xr.sdk.haptics": "67.0.0",
    "com.meta.xr.simulator": "66.0.1",
    "com.unity.ai.navigation": "1.1.4",

    (notice I have not included the com.meta.xr.mrutilitykit)
    Manually edited the package-lock.json file too with the same changes, but don't think it's neccesary.

    Then delete the Tests folder as that throws some error, and you don't need it anyway (who needs TTD).


    Then open Unity so it can import all packages.

    Now you can change a lot of stuff in the MRUK yourself. So I removed some Assertion checks and fixed a negative index bug if you had FLOOR selected in your EffectMesh.cs component. But ended up just deleting the FLOOR label from my EffectMesh. For some reason, it returns an anchor with a width and height of 0, and then EffectMesh is trying to create a mesh that is 0 by 0 with -3 vertices (that will result in an infinite loop).

    EffectMesh.cs: Trying to fix the floor negative vertices bug (but ended up just removing it from the component  Labels):
     

    The other error was that when the room layout was loaded, it contained two rooms (my living room and a room at my office. At least that's my theory as I had 2 saved rooms on my Quest 3). My office room contained 0 anchors,  but was still loaded in the scene. So then I added a warning just to see when that happened (optional):

    MRUK.cs:1304

    And then the most important fix was in MRUKRoom.cs where I removed the Assert that prevents the entire room from loading, to a regular Debug.LogWarning:

    MRUKRoom.cs

    And it's when those functions are running on a room with 0 anchors where the problem occurs. I also had to ensire in my own code that I didn't try to run anything on this ghost room. Ex in my custom ResourceSpawnPositions.cs:


    You will also need to change the path to the binary files for MRUK in MRUKNative.cs:102:
    (or if you're on Mac, change the other path below this)

    var path = Path.GetFullPath("Assets/Plugins/com.meta.xr.mrutilitykit@69.0.0/Plugins/Win64/mrutilitykitshared.dll");

     

    Hope this can help you or someone else in the future until Meta fixes this bug. I also think there is a better way to solve this by filtering out this ghost room with zero anchors in an earlier method.

     

  • Update 2024-10-03
    Tried updating com.meta.xr.mrutilitykit to v68 and removed all my changes above. And the issue still persist. Pressing  settings > device permissions > Deleting shared space data and Clear physical space history (as gillesnovelab  mentioned) in the headset did work as a temporary solution. Hope this bug will be fixed soon.

    Else my edits in MRUKRoom.cs above should still work.

  • Hey, are you able to fix this error? I tried loading room data with no space setup and it didn't prompt me to rescan instead it took old deleted data from quest.
    Edit: I am using v74.0