Closed Malcolmnixon closed 1 month ago
@pietru2004 Could you look into this? While overwriting the camera doesn't visually corrupt XR experiences, it is resetting the Node3D rotation and so gaze-pointer actions (or other functions expecting to be able to read the camera rotation) are being affected.
Last time I checked it wasn't doing anything when xr was active(headset active). Gona check again...
I think, If you set clear_cam_x_when_body_not_active
to false there should be no problems, also I think problem that surreal6 has is related to vr headset he had connected to pc.
Yes, real XR mode can be fixed by overriding the default 'true' value of that value to be false, but that means the user has to explicitly disable a portion of the desktop behavior to get XR mode functioning correctly.
I'm still not clear why the desktop code is doing anything when the user isn't in desktop mode.
Hi there, this seems to be the bug I was experimenting with the desktop function and the gaze pointer. I can confirm the problem
hm... If I recall correctly the clear_cam_x_when_body_not_active
was made for sitting and was meant only for desktop so the if statement should probably be altered. The clear_mouse_move_when_body_not_active is supposed to clear any mouse movement if player is not in desktop mode
The movement_desktop_turn.gd scripts physics_movement() method is resetting the player body camera X-rotation to 0 even when XR is actively being driven by a headset. https://github.com/GodotVR/godot-xr-tools/blob/7c6d455b7d6f4b05e4874cab4d53912270a3d84b/addons/godot-xr-tools/desktop-support/movement_desktop_turn.gd#L87-L95
When not in desktop mode the desktop movement providers should do nothing.