Yellow-Dog-Man / Resonite-Issues

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

Controller haptics toggle with no effect #1740

Open Readun opened 2 months ago

Readun commented 2 months ago

Describe the bug?

The Controller haptics toggle settings has no effect, as long as haptics in general are active, controller will still vibrate, despite controller haptics are turned off.

To Reproduce

Disable controller haptics and let haptics enabled.

Expected behavior

It should disable controller vibrations/haptics, while other devices like haptic vests should still work.

Screenshots

No response

Resonite Version Number

2024.4.16.1147

What Platforms does this occur on?

Windows

What headset if any do you use?

Valve Index

Log Files

Currently not on my Machine, can provide one in 4-5 hours if needed.

Additional Context

No response

Reporters

Readun

Frooxius commented 2 months ago

What exactly is triggering your haptics when this setting is disabled?

Readun commented 2 months ago

I haven't tried it with others, but while controller haptics are off and normal haptics are on. My Controllers will still vibrate, if I move them to my chest.

paradoxical-autumn commented 2 months ago

I can confirm that when I have "Haptic feedback" disbaled but "Controller vibration" enabled, items such as the inspector and dash trigger haptics.

It seems to mainly be UIs triggering this, but I'm currently away from my computer to get a full list of triggers.

This makes me believe that this is by design as haptics are most commonly used for physical interactions.

shiftyscales commented 2 months ago

Hmm- my haptic settings seem to be broken as well- and are constantly 'off' @Frooxius. I'm currently using my Quest via the Oculus native runtime, and haptics and controller vibrations appear to be entirely non-functional. I didn't notice this previously as I usually keep these settings off universally anyway.

After enabling them, my controllers were not vibrating in the usual places I would expect them to, e.g. while moving around items on the inventory, etc. the trigger haptics on controller node also had no effect.

SHIFTY-LAPTOP - 2024.4.17.1420 - 2024-04-18 13_49_06.log

shiftyscales commented 2 months ago

Nevermind- user error- I had forgotten I had lowered the vibration intensity all the way down inside the settings of the Quest itself.

shiftyscales commented 2 months ago

Hmm- only oddity I'm noticing so far is that "Trigger Haptics on Controller" only applies when "Controller Vibration" is enabled- "haptic feedback" can be turned off and the vibration still goes through.

Things seem fairly consistent otherwise- haptic volumes in world only trigger when haptics are enabled, and vibrations from interacting with the UI only occur when controller vibrations are enabled.

So as far as I can tell things are mostly operating as we expect here, except for the trigger haptics on controller node which seems to be an inconsistency/outlier and uses the controller vibration setting instead despite being used on objects in worldspace- which the setting descriptions describe should fall under hapitic feedback, not controller vibration.

Seeking feedback from @Frooxius.

Frooxius commented 2 months ago

I'm having trouble understand what exactly is the issue here? Like what triggers when and when not and when it should and shouldn't?

Would you be able to give a simplified bullet-points / table on this? It's difficult to parse this from the textual description.

shiftyscales commented 2 months ago
Setting Triggered by UI interactions Triggered by haptic volumes/colliders Triggered by Trigger Haptics on Controller ProtoFlux Node
Controller vibration Yes (Expected/Pass) No (Expected/Pass) Yes (Unexpected/Fail)
Haptic feedback No (Expected/Pass) Yes (Expected/Pass) No (Unexpected/Fail)

My observations in table form, I hope this is a bit more readable- sorry for any confusion my prior post might have caused, @Frooxius.

I do not have any additional hardware such as haptic vests, so I am unable to check if the aforementioned is also true of other haptic devices- but as far as controller haptics go, the only outlier I've found to my expected results is the Trigger Haptics on Controller node.

Frooxius commented 2 months ago

Thanks, but I'm still a bit confused here.

So the issue is that Controller Vibration is triggered by the ProtoFlux node specifically? Meaning the ProtoFlux node ignores the disabled setting.

But why would the haptic feedback fail in that case? The node specifically triggers haptic feedback on controllers.

shiftyscales commented 2 months ago

Because if Haptic feedback is enabled, but Controller vibration is disabled, that node will not trigger haptics on the controller at all, @Frooxius.

It is inconsistent with the other mechanisms for triggering haptics, e.g. haptic volumes/colliders.

Haptic volumes will trigger vibrations on the controller when Haptic feedback is enabled and Controller vibration is disabled.

Based on the setting descriptions, Haptic feedback as a setting is intended to be used by objects/items in-world to trigger haptic feedback on the controller. The Trigger Haptics on Controller node doesn't follow the convention set by other kinds of haptics, e.g. collider volumes.


I guess a lot of it depends on my understanding of what the difference is supposed to be between the Controller vibration and Haptic feedback settings.

Is the Controller vibration setting supposed to disable the controller vibration outright for all possible haptic sources?

If that's the case, then haptic volumes triggering haptics on the controller while the Controller vibration setting is off would be an outlier.

I've modified the table which hopefully further clarifies what I'm talking about- I've added extra rows to represent all possible combinations of these two settings. I've not added my expected outcomes until I get clarification on what the Controller vibration vs Haptic feedback settings are supposed to do.

Setting Triggered by UI interactions Triggered by haptic volumes/colliders Triggered by Trigger Haptics on Controller ProtoFlux Node
Controller vibration Off, Haptic feedback Off N N N
Controller vibration Off, Haptic feedback On N Y N
Controller vibration On, Haptic feedback Off Y N Y
Controller vibration On, Haptic feedback On Y Y Y