Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
132 stars 2 forks source link

"User Present in Headset" not always updating after leaving passthrough #1490

Open LuZanth opened 5 months ago

LuZanth commented 5 months ago

Describe the bug?

Randomly, when leaving the Quest 2's Passthrough mode, the User Present in Headset bool will not update to true. Causing eyes to be 'glued' shut and any flux relying on that bool to work incorrectly

To Reproduce

While using a Quest 2 Headset with double-tap to passthrough enabled:

  1. Double tap the headset to enter passthrough
  2. Double tap again to leave passthrough
  3. get (un)lucky

Expected behavior

Exiting passthrough mode should ALWAYS re-enable the present in headset bool

Screenshots

20240313142930_1

Resonite Version Number

Beta 2024.3.12.1169

What Platforms does this occur on?

Windows

What headset if any do you use?

Meta Quest 2

Log Files

DESKTOP-GF4046V - 2024.3.12.1169 - 2024-03-13 14_26_55.log

Additional Context

Initial testing says that duration of being in passthrough has little effect on chance of encountering bug

Reporters

Lu Zanth, Cloud Strider

shiftyscales commented 5 months ago

This could possibly be related to filtering that @Frooxius added to compensate for the presence sensors on some headsets being finicky, e.g. Vive Pro Eye in particular resulting in notification spam as the user's status changed frequently.

It would be helpful if you could determine more specific replication conditions, e.g. does it only happen if you quickly flick between passthrough back to the application? Does it happen at all if you leave it in passthrough for a few minutes? Etc.

The more detail that is given about the conditions under which you are observing the issue- the easier it'd be to address it.

I have noticed sometimes my Vive Pro Eye will think I'm out of headset if I lift it slightly to wipe my eye- this usually requires me fully removing and putting the headset back on to get the detection to reset properly.

So perhaps there could be additional conditions added to the behaviour that will 'reset' the presence sensor's state, e.g. controller inputs, or physically moving the headset past a certain threshold.

Curious for input from @Frooxius.

Frooxius commented 5 months ago

We already reset the presence sensor state when you try to press buttons. If you mash the trigger a bunch, do the eyes not open at all?

What are you using to play with Quest 2? Steam Link? Virtual Desktop? Something else?

shiftyscales commented 5 months ago

I'll have to try it again when it next happens- I don't think I remembered it being tied to trigger presses.

LuZanth commented 5 months ago

Normally I play through wired Quest Link. Though once I can get back in VR I will test other connection methods

Dojan5 commented 2 months ago

I've managed to trigger this quite reliably on my Quest 3 connected via Link Cable. (Link Cable > Quest Link > Steam VR).

In essence, activating passthrough mode, or taking off the headset may swap the game over to desktop mode. At this point things are still fine, but upon putting the headset back on it doesn't always automatically swap back to VR mode. If at this point I use the Desktop View in Quest Link to toggle back to VR mode, my avatar's eyes glue shut.

You can resolve it by mashing the trigger buttons a few times.