Camera angularSensibility vs. speed?

My goal is to have a “freecam” the user can comfortably fly around with and pan the camera. I am struggling to achieve desirable camera rotation control, as the camera’s speed property is heavily affecting how the camera rotates when the user pans.

In this video I attempt to demonstrate the issue.

On second thought, it doesn’t demonstrate it very well since the viewer has no idea where my mouse is :sweat_smile:

Note how on the first run, panning the camera is somewhat stable, but panning ever-so-slightly too fast causes the camera to suddenly snap seemingly multiple revolutions all at once.

On the second run, where only the speed property has been changed (from 0.5 to 50), panning the camera is slower and far less stable. It’s hard to judge how fast I’m moving the mouse, but try for yourself here: the playground roughly emulates the problem I’m having in my project.

I was under the impression that angularSensibility is the only property that should be affecting camera rotation speed, and that the speed property was solely for position changes.

I already tried setting inertia as per this post,

which did something but didn’t fix the issue; rather, it seemed to exacerbate the issue further.

I also tried following these two articles on the topic [1], [2] but I couldn’t find what I was looking for.

My hope is that someone has a ready-made freecam that builds upon the UniversalCamera, or that these are bugs (and can/will be fixed). Otherwise, perhaps I am misunderstanding what the properties do; ideally I have a “positional speed” property and a “rotational speed” property.

Hopefully this demonstration is better.

In this example, speed is set to 50, and I’m moving the mouse at an only slightly varying speed across my desk. But there are these sudden jumps that kill any sense of consistency.

Welcome aboard!

There has been a lot of discussion about this lately.

I’ll let @georgie respond, but please be patient as most of the team members are currently on vacation.

1 Like