Why does the camera's speed performance vary?

Please take a look at this model.

scene (9).zip (824 Bytes)

He was 8.13.1 version

and last version

Camera speed performance is inconsistent.

What happened in between? In my program, speed is calculated based on the sandbox, using radius * 0.2. How can I fix the camera rotation issue?

cc @georgie

1 Like

I am investigating and will update soon!

This PR is the reason for the difference

It was fixing a bug where we were using speed * epsilon for radialinertia limit but not for alpha/beta inertia limit. So this will in fact change the threshold at which inertia kicks in. In your case, rather than using radius*.2 you can lower speed so that it is a smaller factor of radius (try dividing by 1000 and adjusting from there) so that inertia clamping kicks in later

2 Likes

I tried changing it to “(radius / 1000) * 0.2”,I achieved the desired effect.Does the sandbox also need to be updated?

Note you can also change the panningEpsilon or rotationEpsilon to be inverse of speed if changing speed has undesired effects elsewhere.

Yes we should change sandbox to match old behavior, thank you for pointing out. Will address next week once camera folks are back from holiday

1 Like

hey @xiehangyun we decided to revert the change which changed how inertial limit was determined and use the old behavior of simply using rotationEpsilon for the alpha/beta limit. that way we dont introduce any camera behavior changes behind the scenes – and we will address the confusion around parameter names / values in future using new parameters entirely.

which means no changes are needed for sandbox, and in your case u can remove the change to speed once the below PR gets released. thank you for reporting!

here is PR fix Revert to old arcrotatecamera behavior where alpha/beta does not scale inertialLimit by speed by georginahalpern · Pull Request #17517 · BabylonJS/Babylon.js

1 Like