VRMADA / ultimatexr-unity

UltimateXR is a free, open source framework that facilitates the creation of VR applications.
https://www.ultimatexr.io
MIT License
473 stars 62 forks source link

Bugs with controller buttons after a pause, like pressing home button and resume the app #32

Open CaesarGC opened 1 year ago

CaesarGC commented 1 year ago

Bugs with controller buttons after a pause, like pressing home button and resume the app. Excuse me, how should I deal with it?

entromp commented 1 year ago

Hi @CaesarGC,

Which headset/controllers are you using?

GiiiiitHubbbbbb commented 1 year ago

hi,I also encountered the same problem on Pico4's headwear device. This bug will occur when I go out of the security zone, press the main interface key or hang the application to the background

GiiiiitHubbbbbb commented 1 year ago

Hi @CaesarGC,

Which headset/controllers are you using?

But the application I developed with the native Pico SDK will not have this problem I hope your development team can fix this problem, because when this happens, it means that users must exit the application and re-enter thanks!

GiiiiitHubbbbbb commented 1 year ago

This bug shows that the hand posture no longer responds to the controller

entromp commented 1 year ago

Do you have a Pico 3 to check if it also happens on this device?

GiiiiitHubbbbbb commented 1 year ago

of course,Both Pico3 and Pico4 have this problem. You can directly publish and package the Demo scenario of Ultimate XR and follow my instructions to reproduce this problem

chengj78 commented 1 year ago

Do you have a Pico 3 to check if it also happens on this device?

I had same problem, When press Home button in quest will into function InputDevices_DeviceDisconnected but pico is not into it

chengj78 commented 1 year ago

Hand and head position is tracked,but any key is disabled

entromp commented 1 year ago

It seems to be related to Pico's implementation not sending the DeviceConnected when going back to the application. We'll see if there is a workaround for this, thanks for reporting.

chengj78 commented 1 year ago

We'll see if there is a workaround for this, thanks for reporting.

When press menu button and back to the application

int i=0;
foreach(UxrControllerInput input in UxrControllerInput.GetComponents(this,false)){
    print("input:type"+input.GetType().ToString() + i);
    i++;
}

print int console 08-11 18:25:16.940 28007 2291 I Unity : input:typeUltimateXR.Devices.Integrations.UxrGamepadInput0 08-11 18:25:16.941 28007 2291 I Unity : input:typeUltimateXR.Devices.Integrations.Pico.UxrPicoNeo3Input1

entromp commented 11 months ago

Sorry I completely overlooked this one. This certainly seems to be the issue. But why does it report a Gamepad after pausing and not at the beginning? I will create a fix right away. Thanks for reporting and sorry it took so long for me to notice :)

entromp commented 11 months ago

Fixed in #56