shadps4-emu / shadPS4

PS4 emulator for Windows,Linux,MacOS
https://shadps4.net/
GNU General Public License v2.0
10.41k stars 633 forks source link

DualSense, DualShock 4 correct implementation & keyboard blocking does not work on this controllers #1247

Closed par274 closed 1 week ago

par274 commented 2 weeks ago

I have controllers for all 4 main consoles, including the Switch controller, so I performed the tests.

I'm aware the emulator is in a very early stage but I think there should be a reported issue open. In this way, it can reach more developers.

The first problem is related to the DualSense and DualShock 4 integration. These controllers work in the emulator, but they act like Xbox controllers, so features such as Gyro and TouchPad that are required in some games do not work. For example, Gesture and shortcut menus do not open in Bloodborne.

The other issue is more of a bug.

https://github.com/shadps4-emu/shadPS4/pull/1237

Here it hides the mouse cursor when using a controller. While it hides the cursor on the Xbox controller, it does not hide it on the DualSense and DualShock 4 controllers. But this does not always happen.

fireph commented 2 weeks ago

touchpad support is being added in https://github.com/shadps4-emu/shadPS4/pull/1257

tGecko commented 2 weeks ago

Here it hides the mouse cursor when using a controller. While it hides the cursor on the Xbox controller, it does not hide it on the DualSense and DualShock 4 controllers.

DualSense doesn't work at all for me, but DS4 works fine, including hiding the cursor. Maybe you have some sort of software interfering (DS4Windows, Steam)?

fireph commented 2 weeks ago

dualsense works fine with no extra software, just plugged in via a USB cable

tGecko commented 2 weeks ago

Oh after restarting it works. Cursor hiding works on DualSense as well for me 🤔 Under what conditions does it not work for you?

Edit: Retested and cursor hide confirmed working on: DS4 DualSense Xbox Elite 2 Xbox one Switch Pro Nacon DS4-like 8BITDO SF30 Pro

Cursor hide works on all these. There is no reason it shouldn't, unless something is moving the mouse.

par274 commented 2 weeks ago

touchpad support is being added in #1257

Thank you. I tried it on all 4 controllers and it hides the cursor. And TouchPad working properly.

But I discovered a bug, for example in Bloodborne, the shortcut is opened with the right side of the TouchPad and the gesture menu is opened with the left side. I downloaded build #1258 but sometimes even if you click on the left side of the TouchPad, it clicks on the right side.

Other than that, everything works perfectly. If you want to go over it, I think you can bring a screenshot with the Share button. And gyro.

Ekran görüntüsü 2024-10-06 141251 Ekran görüntüsü 2024-10-06 141345

fireph commented 2 weeks ago

@par274 this is known bug in the SDL library that is used for the controller. It will likely automatically get fixed when https://github.com/libsdl-org/SDL/issues/11085 gets fixed. To avoid it, touch the touchpad and then click it.

par274 commented 2 weeks ago

@par274 this is known bug in the SDL library that is used for the controller. It will likely automatically get fixed when libsdl-org/SDL#11085 gets fixed. To avoid it, touch the touchpad and then click it.

Yes, I just read your comment that this problem is related to SDL. I think the same problem has been going on in SDL for years because I was experiencing it in PSNow from time to time.

par274 commented 1 week ago

updated sdl to fix touchpad issue (#1275)

All problems seem to be fixed. I'm closing the issue.