Ease in or any other easing effect with Camera

Hi all,
Any possibilities to attach easing effect with mouse control of rotation (arc rotate camera)?

Hello!
Tagging @PolygonalSun

Hi!
What exactly do you want to achieve? There are tons of parameters on the arc camera already for tweaking the movement. If none of them satisfies your needs you can manually change the alpha, beta and radius or position and target of the camera using an easing function based on the mouse movement. Just hook a listener on the mousemove event and change the camera’s values based on the mousemove eased delta values.

1 Like

@roland Thanks for your reply. While rotating the arc rotate camera with mouse control of dragging, It needs to give a smooth experience to the user. this is what my need

Hey!

I suppose you are talking about inertia. You don’t want the camera to stop just right after you stop dragging/rotating but smoothly slow down?

Try these settings for example. You really want to tweak the values to fit your needs. Some of the values are very sensitive to even small changes so if your camera starts to rotate/move like crazy use small increments/decrements. And some of them are quite the opposite, needs to be punched hardly :muscle:

    camera.angularSensibilityX = 1000
    camera.angularSensibilityY = 1000
    camera.panningSensibility = 1000
    camera.inertia = 0.96
    camera.panningInertia = 0.96
    camera.wheelPrecision = 0.05
    camera.wheelDeltaPercentage = 0.05

Here you can find all the available settings for the camera. The best way is to try them out step by step so you’ll see yourself how the value changes affects the camera.

https://doc.babylonjs.com/typedoc/classes/babylon.arcrotatecamera

:vulcan_salute:

Thanks for your time on it @roland. But this is not my need. Even this is working like a smooth, if we merge an easing function with this, It could be more and more great experience. That’s what I am trying to do.

You are welcome @jayakannan.
Any example of what you are after?

1 Like

In your case camera inertia is the main parameter for the ‘easing’. Personally for me this is enough for the smooth experience.
But I believe you can take some ready easing functions which you need and process some camera values dynamically with these functions…

Hello @jayakannan just checking in, was your question answered?

2 Likes

yes @carolhmj

1 Like