godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
91.38k stars 21.26k forks source link

Touch-based navigation in the 3D editor has strange motion when zoomed out #99635

Open Calinou opened 1 day ago

Calinou commented 1 day ago

Tested versions

System information

Godot v4.4.dev (fd6c4515f) - Android - Single-window, 1 monitor - OpenGL ES 3 (Compatibility) - Adreno (TM) 730 - (8 threads)

Issue description

On Android, touch-based navigation in the 3D editor has its right stick motion act in a strange way depending on zoom. The more zoomed out you are, the more it will move around as you change the view direction. This results in "jelly"-looking motion.

Default zoom level:

https://github.com/user-attachments/assets/addffea8-2ab6-4f61-9216-847ab9a96b6a

When more zoomed out and going back to the origin using freelook:

https://github.com/user-attachments/assets/a57e5b10-34bb-4843-b1ee-9000e1108fda

This may occur because right stick motion doesn't actually enter freelook mode, but pans around the camera instead while compensating for the orbit position change manually (panning is smoothed by default, but orbiting isn't). If I set Translation Inertia to 0 in the Editor Settings, the problem goes away entirely.

Steps to reproduce

Minimal reproduction project (MRP)

N/A