Smooth camera movement for all devices

Hello everyone,

I’m trying to create a smooth camera movement for my game that works on all devices including desktop, mobile, and console. However, I’m having trouble achieving this with the current camera scripts and methods available.

I know how I should be doing it (lerping & deltatime) but I just don’t know how to execute it.

I’ve tried various camera scripts and solutions, including using Lerping, the Humanoid.CameraOffset property, and modifying the Update() method of the ClassicCamera, but none of them provided the smooth and consistent camera movement that I’m looking for.

There is a script by @DeruTuru that works (camera-wise) exactly how I want, but, it breaks mobile and console, locks first person, and lets you move through parts(?).

I’ve seen a lot of people say “use springs” and then link some GitHub page about the “nevermore engine” but that really doesn’t help at all (wdym ‘just use springs’).

What I’m trying to accomplish is to create a camera movement that interpolates when the player moves their mouse, drags with finger on mobile, or moves a joystick, rather than just snapping to the correct position. The camera position should not change; it’s supposed to keep up with the character, just interpolate between the mouse/joystick movements. Additionally, I want the camera to be able to zoom in and out normally. This needs to work in first person, but would be nice in 3rd person.

I would send a video of what I’m trying to do, but my computer won’t record stuff at the moment.

I would greatly appreciate any help or suggestions on how to achieve this. Has anyone been able to create a smooth camera movement that works on all devices? If so, could you please share your method or script?

Thank you in advance for your help.

TL;DR I want a camera script that makes mouse movements smooth. Should work on all devices, or at least just on computer and not break other devices cameras.

Hey! Just for clarification, do you mean a camera system that’s somewhat like doors?

Yeah! That would be what I’m looking for.

I recommend trying to use Quenty’s Spring Module, I can’t really go in-depth, but there’s tutorials out there that can help you :slight_smile:

I will try! However I cannot really comprehend how that would work :sweat_smile:!

1 Like