Log in to vote

Camera lock rotation to mouse, like in shift lock mode?

Asked by 3 months ago
Edited 3 months ago

The title sounds odd I know.

I have a camera script and I am trying to make a custom 3rd person camera script. Like the one roblox has when you enable shift lock but I am making my own because theres is a little... Well lets say limiting.

I am trying to figure out how to make the camera rotate with the mouse like in shift lock mode.

Heres my script so far.

local camera = game.Workspace.CurrentCamera
local player = game.Players.LocalPlayer

until player.Character

local character = player.Character
local player_Torso = character.Torso

camera.CameraType = Enum.CameraType.Scriptable
camera.CameraSubject = player_Torso

    camera.CFrame = + 2, player_Torso.CFrame.Y + 2, player_Torso.CFrame.Z + 4)
    camera.FieldOfView = 90 

Thank you for your time. :)

1 answer

Log in to vote
Answered by
mattscy 1556
3 months ago

CFrame can have two arguments, which are its position and the lookAt facing direction. If you set the facing direction to the lookVector of the torso after it is offsetted from the position, it should point in the same direction that the torso is.

local cameraPosition = + 2, player_Torso.Position.Y + 2, player_Torso.Position.Z + 4)
camera.CFrame =, cameraPosition + player_Torso.CFrame.lookVector)
I mean like, you know how ROBLOX has a shift lock mode. I wanted to lock the characteres lookvector and the cameras look vector the the mouse or center of the screen GottaHaveAFunTime 126 — 3mo
Then you could use game.Players.LocalPlayer:GetMouse().Hit.p as the lookAt argument. mattscy 1556 — 3mo

Answer this question