Locking the Camera Behind the Player / Locking the Player to the Camera

Hi guys,

To begin with I am just beginning to dabble in Camera Control, so I don’t really know anything about it. I am using an open sourced Camera Tutorial as a starting place.

This Camera System works great for the most part, and there is only one thing that I would like to change about, that being that I would the player to have control over their Camera Zoom Level. I obviously want to set a limit to their max zoom, but still allow the player to decide what level of zoom is best for them, within the max range.

The only problem, like I said above, I don’t really know anything about Camera Manipulation, so I am hoping someone that knows what they’re doing is able to give me some insight.

For reference, I am looking for something like Shindo Life’s camera control, where the player has free range over their camera other than it being locked behind their character, and having a max zoom set:
https://gyazo.com/918b622a5864549c23a0a3e7372a782c

EDIT 2:
I actually believe that all I really need for what I am wanting is a MouseLock and CharacterRotation with the Camera.

1 Like

This video I made a few days ago shows you how to do almost all of that (save for the zoom) and should be a good starting place: Roblox Lua Scripting - Creating An Over-the-Shoulder Camera - YouTube

2 Likes

Hey I checked out your video and tried your script, but the one that you had linked in the description of the video still had the player turning when walking forward. Figured I would just let you know that.

On a separate note, I basically have what I want figured out and am only using a mouse lock and character rotator that is link to the camera rotation.
https://gyazo.com/f7d5ec682b2ac0aab6dee4acb6892725

However, I still need to figure out a way to have the camera be raised slightly above its normal location so that it just looks better. If you know how that would be done please feel free to let me know!

Edit: I believe that finding the normal camera position and changing its Vector3 value or CFrame by adding either a Vector3 or CFrame value to it would be the best way.