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

What approach for left handed people? #165

Open
badVibes-- opened this issue Nov 3, 2020 · 3 comments
Open

What approach for left handed people? #165

badVibes-- opened this issue Nov 3, 2020 · 3 comments
Assignees
Labels
good first issue Good for newcomers help wanted Extra attention is needed

Comments

@badVibes--
Copy link

Are there any best practices when it comes to adding support for left handed people? Cant seem to come up with a good solution besides naming the actions by their position on the controller, which kind of goes against the whole action thing. Ideally we should be able to provide two maps and be able to switch between them. Do you have any suggestions what would be a good way of approaching this problem? Thank you.

@1runeberg 1runeberg self-assigned this Nov 3, 2020
@1runeberg 1runeberg added good first issue Good for newcomers help wanted Extra attention is needed labels Nov 3, 2020
@1runeberg
Copy link
Contributor

1runeberg commented Nov 3, 2020

Hi @badVibes-- Unfortunately the engine's input system is built on using "Left" and "Right" controller values so it's a bit difficult to have a solution that'll work well with the normal engine workflow.

As a lefthanded person myself, I do understand the concern, but potentially the best solution at the moment is to publish custom Left Handed Bindings via Steam and have your users opt for those. If you're using the plugin as designed (actions), then it should respect these custom bindings.

@badVibes--
Copy link
Author

@1runeberg Thank you for your fast response. Your suggestion would work but it would not be the best user experience. I have no way of knowing if the change happened during game play. Because of this, it would be a two step process for the user. First change the bindings and then switch the setting in game (its a drawing app and I need to switch the tool position and place icons).
One idea that seems kinda doable is have double actions defined for (left hand mode and right hand mode) the things that would switch hands. That way both modes can be custom mapped and switched from the game (I would simply ignore half of them). I wonder if action sets would be useful in this scenario, will we get support for those?

IMHO this should be handled by Steam VR Input somehow, not just this plugin. Im right handed myself but I feel it's important. Most controllers are not symmetric like Vives. Having support 'built in' would surely encourage developers to implement it and make it much less likely that games would ship without it. Every binding definition should simply have both maps and and some way to switch them from the game.

@1runeberg
Copy link
Contributor

1runeberg commented Nov 4, 2020

@badVibes-- you shouldnt need to know the user preference on your app as the runtime and the plugin handles this via actions, regardless of developer's original bindings. this allows a more flexible option for your users past left handed vs right handed (e.g. single handed, personal preference, etc).

if you wish to still provide options to swap to in-game, creating mirrored actions with L/R names will be the only option with hte current UE UI.

Just to be clear - OpenVR does support left vs right hand as well as easy mirroring, these features however are difficult to implement with the current UE input architecture without adding additional load for developers or breaking away from the UE development workflow.

Actionsets can also be used for this purpose as you mentioned, however, again, the current UE UI and input architecture doesnt have a way to express this. We've looked at the possbility of creating our own UI but this adds a cognitive load for xr developers as its not a seamless part of the UE workflow.

Ideally , this should be supported engine-side. Our future efforts are with OpenXR however and so is Epic. Actionsets are featured in OpenXR so imo it'd be something useful for Epic to implement for their developers. I highly encourage developers to voice their opinions on this as well through Epic's official forums.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants