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

[Feature Request] Provide alternative way to enable/rebind Dpad-shifting for controllers without thumb rest #14

Open
ixtrix opened this issue Jan 1, 2024 · 26 comments
Labels
enhancement New feature or request

Comments

@ixtrix
Copy link

ixtrix commented Jan 1, 2024

The pico 4 doesnt have touch controller/thumb rest buttons, can you add an option so it uses both grips and a joystick as an options for the DPadMethod.

UEVR-1.0\src\mods\VR.hpp
Line 730
static const inline std::vector<std::string> s_dpad_method_names { "Right Thumbrest + Left Joystick", "Left Thumbrest + Right Joystick", "Left Joystick (Disables Standard Joystick Input)", "Right Joystick (Disables Standard Joystick Input)"

@FolkSong
Copy link

FolkSong commented Jan 2, 2024

I agree more options for this would be good (affects WMR controllers as well).

One idea I had, inspired by the REFramework, is moving your hand beside your head to make the stick control the dpad. Or some other position-based modifier that won't interfere with most games.

@FolkSong
Copy link

FolkSong commented Jan 3, 2024

I just realized - on WMR we have a right menu button which is completely unused! I think Pico does too. The easiest solution would be to use this as the dpad shifter.

It seems like we should be able to map it ourselves through the injector, but I can't get the extra button to map to anything. I'll open a dedicated issue for this: #37

@ixtrix
Copy link
Author

ixtrix commented Jan 3, 2024

The menu button on pico opens up the Pico HUB/VD options, so I think it has to be done through the grips/other non system buttons for this.

@vkleinmp
Copy link

vkleinmp commented Jan 5, 2024

Index user here with same problem. Also Index has 2 touchpads you could use either as touch touchpad + controller (like default withthum rest) or use the touchpad directly as 4 way dpad.

@o8615998
Copy link

o8615998 commented Jan 5, 2024

If you don't need to use the right joystick for control, you can change your right joystick to control the D-PAD.
The method of use is as follows: Open the UE menu in the game->Click Input->Click Right Thumbrest+Left joystick
->Select Right Joystick (Disables Standard Joystick Input)
->At this time, your right joystick is up to D-PAD UP,And so on -> Next close the menu and enjoy the game!

@Kassender
Copy link

Sorry, i just came in, and i have a pico 4, what s your problem exactly?
The issue is the lack of the cross buttons maped on the controller to sélect the spells?

In this case, what i notice is the right grip is useless, the best would be to transforme the right joystick in D-Pad when we tighten the grip.

@FolkSong
Copy link

FolkSong commented Jan 9, 2024

@ixtrix could you change the title to be more descriptive? Something like "[Request] Provide alternative ways to enable Dpad for controllers without thumb rest". I don't want this to get lost.

@ixtrix ixtrix changed the title No Touch Controller Buttons [Request] Provide alternative way to enable Dpad for controllers without thumb rest Jan 11, 2024
@ixtrix ixtrix changed the title [Request] Provide alternative way to enable Dpad for controllers without thumb rest [Feature Request] Provide alternative way to enable/rebind Dpad-shifting for controllers without thumb rest Jan 11, 2024
@wdoo02
Copy link

wdoo02 commented Jan 11, 2024

Hey guys, just managed to add an alternative dpad-shifting method (Right joystick click + Left joystick) based on UEVR 1.2. See the release link below.
I have tested it with a few games. Seems to work fine. I am going to test some more games before a pull request.

https://github.com/wdoo02/UEVR/releases/tag/1.2.2

@joeyhodge
Copy link
Sponsor

Hey guys, just managed to add an alternative dpad-shifting method (Right joystick click + Left joystick) based on UEVR 1.2. See the release link below. I have tested it with a few games. Seems to work fine. I am going to test some more games before a pull request.

https://github.com/wdoo02/UEVR/releases/tag/1.2.2

very interested how your testing goes, and just curious isn't one of the existing dpad shifting options right joystick click+left joystick?) or is this using different syntax than the existing option?

@FolkSong
Copy link

@joeyhodge The existing option is the right "thumb rest" which is a touch-sensitive area on the face of Oculus controllers, beside the buttons. Not the thumb stick.

@wdoo02 That sounds great, I'll have to try it. The only problem is that in some games the right stick click is a needed function.

@joeyhodge
Copy link
Sponsor

gotcha, thanks for clarification, same as "trackpad" currently, yes? I also do not have that on G2 controllers if so, and would likely benefit from that patch

@Kassender
Copy link

Thank you very much for your work, congrats.
I gona try it now

@joeyhodge
Copy link
Sponsor

HAPPY to report, the new dpad shifting you added works like a charm for me in openXR G2

@praydog
Copy link
Owner

praydog commented Jan 12, 2024

Initial version of gesture-based DPad shifting has been implemented in 1404191. Will need to switch the shifting method under Input. Dev builds can be downloaded from Actions

For now it is

  1. Move left controller to left side of head
  2. You'll feel a vibration, then can move the joystick in any direction to initiate DPad inputs

I will add the right controller soon and can add something like arm near the waist as well

@Kassender
Copy link

just amazing, thank you very much !!!
good job and thanks again

@Kassender
Copy link

Kassender commented Jan 12, 2024 via email

@joeyhodge
Copy link
Sponsor

Nice work PD, works great! sometimes takes a couple tries of moving left controller near head before it vibrates, but not bad at all. I'm sure it will only continue to get fine tuned/more options in future, but this takes care of a really big need in a lot of games for folks. If you have the full release of 1.02 beta, then can use that same folder and just replace the single file UEVRBackend.dll with the new one on github actions tab under the latest run on the summary page at bottom under artifacts

@Kassender
Copy link

Kassender commented Jan 13, 2024 via email

@praydog
Copy link
Owner

praydog commented Jan 14, 2024

Gesture based method is in 1.03

Not fully closing yet as other options may be needed

@praydog praydog added the enhancement New feature or request label Jan 14, 2024
@FolkSong
Copy link

FolkSong commented Jan 14, 2024

A few notes testing 1.03 with Reverb G2 (openXR)

  • I don't get any vibration to tell me when my hand is in position (I do get vibration from the game)
  • Left joystick mode works as expected
  • Right joystick mode sends dpad commands but also sends snap turns at the same time, with that option enabled. I would expect snap turn to be disabled when in dpad mode.

@joeyhodge
Copy link
Sponsor

joeyhodge commented Jan 14, 2024

A few notes testing 1.03 with Reverb G2:

  • I don't get any vibration to tell me when my hand is in position (I do get vibration from the game)
  • Left joystick mode works as expected
  • Right joystick mode sends dpad commands but also sends snap turns at the same time, with that option enabled. I would expect snap turn to be disabled when in dpad mode.

agreed on the right joystick commands, however, I do get vibration on both methods (G2 OpenXR 2080 super) although it takes me a couple of tries and would very much like the option that was made in this thread as well:

Hey guys, just managed to add an alternative dpad-shifting method (Right joystick click + Left joystick) based on UEVR 1.2. See the release link below. I have tested it with a few games. Seems to work fine. I am going to test some more games before a pull request.

https://github.com/wdoo02/UEVR/releases/tag/1.2.2

@joeyhodge
Copy link
Sponsor

joeyhodge commented Jan 15, 2024

Gesture based method is in 1.03

Not fully closing yet as other options may be needed

The more I test the gesture method, the more inconsistent and more attempts it takes before it actually works. Can you please also give the option listed above Right joystick click + Left joystick (disables R3) as that was 100% reliable especially in games when dpad is time sensitive.

@Kassender
Copy link

@wdoo02 @praydog
Please, Is it possible to ADD in the last release 1.03 the DPAD method click R3 + Left joystick (disables R3) ?
The more we have; the better, and i tested it of Lies of P; kena and Hogwarts legacy and it works amazing.

Thank you again.

@wdoo02
Copy link

wdoo02 commented Jan 16, 2024

I have catch up with the current version and opened a pull request.
"click L3 + Right joystick (disables L3)" is also added. When using this method, snap turn is temporarily disabled when the left joystick is pressed.

As for the snap turn issue:
I am unable to temporarily disable snap turn for gesture + right stick in my patch. My guess is that this is caused by the difference in frequency between the gesture-detection and the key-mapping.

https://github.com/wdoo02/UEVR/releases/tag/1.03.1

@Kassender
Copy link

Kassender commented Jan 16, 2024 via email

@joeyhodge
Copy link
Sponsor

joeyhodge commented Jan 20, 2024

yep that is correct, this works like a charm

So we just need to take uevr 1.03 and change the backend.dll by yours ? Envoyé à partir de Outlook pour Androidhttps://aka.ms/AAb9ysg

________________________________ From: wdoo02 @.> Sent: Tuesday, January 16, 2024 5:28:54 PM To: praydog/UEVR @.> Cc: Kassender @.>; Comment @.> Subject: Re: [praydog/UEVR] [Feature Request] Provide alternative way to enable/rebind Dpad-shifting for controllers without thumb rest (Issue #14) I have catch up with the current version and opened a pull request. "click L3 + Right joystick (disables L3)" is also added. When using this method, snap turn is temporarily disabled when the left joystick is pressed. As for the snap turn issue: I am unable to temporarily disable snap turn for gesture + right stick in my patch. My guess is that this is caused by the difference in frequency between the gesture-detection and the key-mapping. https://github.com/wdoo02/UEVR/releases/tag/1.03.1 — Reply to this email directly, view it on GitHub<#14 (comment)>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BFA6PZLXFOUPWHFTBLDKKDTYO2TENAVCNFSM6AAAAABBJIDWOKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJUGA4TAMRTG4. You are receiving this because you commented.Message ID: @.***>

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

No branches or pull requests

8 participants