Lime-3DS-Emulator
Lime-3DS-Emulator copied to clipboard
(Android) XYBA Button Sliding
Is there an existing issue for this?
- [X] I have searched the existing issues
What feature are you suggesting?
As requested, i am turning this into a separate issue, essentially, this would allow you to slide between the B/A/X/Y buttons.
Why would this feature be useful?
Essentially allows touch controls to be more versatile, helping people who can't exactly use controllers on their phones.
As for ideas/inspirations on how this could work, i have a video example of another emulator, NetherSX, where you can hold a button, and then slide between the other buttons while the button is still being held, here's a video example.
https://github.com/user-attachments/assets/3f3d4b62-bdbc-45ac-9363-c9cb93cbb873
I think this has a place in the emulator as a configuration option, however not as demonstrated in the video above. I would instead suggest that it is implemented as you would expect it to work on a real console, where sliding off of a button and onto another doesn't keep the original button held down
I'm interested in implementing this topic, is this still wanted? @OpenSauce04
I would like clarification on my idea on how to solve the issue with multiple buttons + button sliding more naturally: On a real console you are able to hold down two buttons with one finger, allowing you to input two buttons at once more easily. I'd suggest to add a grace period (koyote timer) before disabling a button once slid off. This would allow for a small time window to just slide from one button to another and back to get a combined input of both buttons.
I'm interested in implementing this topic, is this still wanted? @OpenSauce04
Sure.
I would like clarification on my idea on how to solve the issue with multiple buttons + button sliding more naturally: On a real console you are able to hold down two buttons with one finger, allowing you to input two buttons at once more easily. I'd suggest to add a grace period (koyote timer) before disabling a button once slid off. This would allow for a small time window to just slide from one button to another and back to get a combined input of both buttons.
I think the best way to handle it would be to have diagonal inputs would be a setting with 3 options.
- The first option, which would be the default, wouldn't have button sliding and would behave the same as the current behaviour.
- The second option could have button sliding which allows you to move between multiple buttons, but you can't hold multiple buttons at the same time.
- The third option would have button sliding which does support multiple button inputs with a single finger. I'm not sure what the best way to implement this may be, but considering that the second option exists for those who want that behaviour, perhaps something like the video shown in the original issue would be the most intuitive way to handle it?
Let me know what you think.