Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Bug InputRecorder & OpenXR

Discussion in 'XR Interaction Toolkit and Input' started by DougLuminous, Jun 13, 2022.

  1. DougLuminous

    DougLuminous

    Joined:
    Oct 19, 2018
    Posts:
    7
    I am trying to use the InputRecorder sample to save a replay VR interactions for testing purposes.

    If I make a recording and immediately replay it, it works exactly as expected.
    The issue I'm hitting is that the controllers do not animate after either:
    • The controllers have gone to sleep due to being put down
    • Or enter play mode, load a saved recording from file and replay the recording

    I'm currently testing in editor using a Quest 2 with a Link cable in editor using the Controllers sample that comes with the OpenXR Plugin package.

    Unity and package versions:
    Unity 2020.3.33f1
    Input System - 1.3.0
    OpenXR Plugin - 1.2.8
    Oculus XR Plugin - 3.0.0-pre.2

    Also
    Unity 2021.3.2f1
    Input System - 1.3.0
    OpenXR Plugin - 1.4.2
    Oculus XR plugin - 3.0.2

    I'm open to other ideas for input recording and playback if this is just a know restriction of the input recorder.
     
  2. VRDave_Unity

    VRDave_Unity

    Unity Technologies

    Joined:
    Nov 19, 2021
    Posts:
    260
    Hi @DougLuminous,

    Thank you for bringing this to our attention. This definitely should not be the case. We will investigate on our end and try to reproduce it. What version of XR Interaction Toolkit are you using?
     
  3. DougLuminous

    DougLuminous

    Joined:
    Oct 19, 2018
    Posts:
    7
    Hi Dave,

    In the app we're currently shipping we have version 1.0.0-pre.4, although in the sample project I am testing in does not have it at all.

    We are currently using Unity 2020.3.33f1 for our production projects, so the fix there would be most helpful.

    Thanks!
     
  4. DougLuminous

    DougLuminous

    Joined:
    Oct 19, 2018
    Posts:
    7
    Hi again,

    I've been continuing to look into this and have had a bit of a breakthrough.
    I noticed that the controllers that are loaded from the input recorder script were missing the the Device Usage flag that tells it what hand it is for. Unlike the devices that are loaded when using the headset with device link.

    So listening to InputSystem.onDeviceChange and if the created device name contains oculus touch I assign it a hand using InputSystem.SetDeviceUsage(device, "RightHand");

    this has the drawback of I don't know witch hand is witch but it at least replays the controllers now!

    Hopefully this will help you implement a better fix into the InputRecorder sample.
     
  5. PatHightreeXVR

    PatHightreeXVR

    Joined:
    Dec 10, 2018
    Posts:
    19
    I'm running into the same issue using OpenXR, is there any progress ?
    Unity 2022.1.5f1, XRIT 2.0.2
     
  6. VRDave_Unity

    VRDave_Unity

    Unity Technologies

    Joined:
    Nov 19, 2021
    Posts:
    260
    Hey @DougLuminous and @PatHightreeXVR ,
    Sorry it took so long to get back to you, but we believe we have a workaround for this issue while waiting for a fix to land. Can you please let us know if these steps allow the recordings to animate correctly when the device goes to sleep:
    • Disable the Quest Device in the Input Debugger (
      Windows->Analysis->Input Debugger
      ). It just needs to be disabled during playback as the physical device looks like it is interfering somehow.
    • Also verify that
      Replay on New Devices
      is checked in the Input Recorder Inspector Window.
    I hope this helps with what you are experiencing.
     
  7. TBarclay

    TBarclay

    Joined:
    Mar 9, 2021
    Posts:
    1

    I am having the same issues as stated above. I tried the two suggestions that you made - This works for the headset, the camera is animated correctly, but the controllers still do not animate.
    Input System 1.3.0
    Open XR 1.3.1
    Untiy 2020.3.33

    I would love any extra suggestions/updates, thank you.
     
  8. Adrianfromvik

    Adrianfromvik

    Joined:
    Oct 10, 2023
    Posts:
    3
    Anyone found a fix for this issue? I'm testing with a XR device trying to record the Headset + controller position.
    Record and replay works within the same play session. But if I stop the session and go to restart it via editor, it doesn't work anymore. Suspect it's something to do with instance ID? Any help is appreciated.
     
  9. Adrianfromvik

    Adrianfromvik

    Joined:
    Oct 10, 2023
    Posts:
    3
    I've also tried turning on Replay on New Devices but it causes the headset to not replay but instead devices around it moving as if it did.