Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feeder] Have bindings for reset assigned by default #9

Open
TheButlah opened this issue Feb 12, 2023 · 9 comments
Open

[Feeder] Have bindings for reset assigned by default #9

TheButlah opened this issue Feb 12, 2023 · 9 comments

Comments

@TheButlah
Copy link

Currently, the feeder app exposes some OpenVR actions for full reset and fast reset that can be bound to controller bindings. These should be assigned to a sensible default on a few common controllers (most important are quest controllers and index knuckels).

The rationale for this is that the process of assigning openvr bindings is still rather difficult for people who are nontechnical. Because drift is such a common occurance, being able to double tap a button to calibrate instead of reaching for the GUI + Timer is important for a good user experience.

There is a risk of interfering with the control schemes for some games. Luckily, we know that the only real games that support FBT are VRChat, Neos, Chillout VR, and Blade and Sorcery. I would suggest we simply give it a best effort default and leave it up to the user to remap things if necessary.

@TheButlah TheButlah changed the title [Feeder] Have bindings for fast and full reset assigned by default [Feeder] Have bindings for reset assigned by default Feb 12, 2023
@kitlith
Copy link
Member

kitlith commented Feb 13, 2023

I'm pulling prior things I've said in discord:

In that case, I'm in favor of chorded default bindings, in an effort to avoid accidental triggering and avoid accidental overlap with other bindings.

am considering bundling a default for index controllers along the lines of 'chorded click for fast reset, chorded hold for full reset"

So: click for fast reset and hold for full reset we probably want to do using the trigger. That leaves the question of what else we chord with. (Also: how does mounting reset play into this? separate issue i guess )

Another option would be to do left hand for fast reset and right hand for full reset, but that's eh to me.

My personal binding is clicking the touchpad on both index controllers. Could make default binding touching both pads, and clicking one/both controllers?

I'm just making notes out loud tbh. I'll figure something out for index, and then best-effort map a similar idea to the other controllers.

@Erimelowo
Copy link
Member

My personal bindings with Index controllers are: Left hand touchpad up for Full reset, and Right hand touchpad up for Fast reset.
I don't think mounting reset should be bound somewhere by default (or if it is, something complicated)? People wouldn't know how to use it... cc @ButterscotchV

@TheButlah
Copy link
Author

TheButlah commented Feb 13, 2023

I don't think mounting reset should be bound somewhere by default

Agreed

I'm in favor of chorded default bindings

Personally, I'm not sure if I agree. But maybe I'm underestimating how easy it is for a user to do that quickly. Do you have an example binding you recommend for index controller?

@kitlith
Copy link
Member

kitlith commented Feb 13, 2023

Personally, I'm not sure if I agree. But maybe I'm underestimating how easy it is for a user to do that quickly. Do you have an example binding you recommend for index controller?

example: hold a and click trigger. other example is the one i currently use, click both touchpads. just need to figure out a reasonable thing for fast/full reset.

I don't think mounting reset should be bound somewhere by default

That's fair, how does that interact with full reset though? if we should be doing a mounting reset after each full reset, then maybe that shouldn't be bound by default. (i haven't been keeping track of how it works)

@Erimelowo
Copy link
Member

Mounting reset only needs to be done if the trackers shifted IRL. It goes like this:
Initial setup: Full reset + Mounting reset (done via the mounting calibration tab in GUI)
Trackers drifted: Full reset OR Quick reset (done via bindings)
Trackers shifted IRL: do Initial setup

@TheButlah
Copy link
Author

hold a and click trigger

Honestly, that seems even easier than what I currently do - double tap a. I suppose chorded would be fine then. Maybe lets add a default index controller binding and quest, that is chorded.

@kitlith
Copy link
Member

kitlith commented Feb 14, 2023

question: would hold a on both controllers + either trigger be overkill? for fast reset vs full reset, would it be preferable to vary trigger (i.e. click for fast, long for full) or the button held (a on both controllers vs b on both controllers?)

@TheButlah
Copy link
Author

I think its better for us to vary by button rather than by duration held.

@kitlith
Copy link
Member

kitlith commented Mar 2, 2023

This is being explored in this pre-release: https://github.com/SlimeVR/SlimeVR-Feeder-App/releases/tag/v0.2.9 which has been sent to the beta testing channel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants