Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How to point the camera at the mouse position?

Asked by 5 years ago

Hello All,

I am trying to write a camera script that will point the player's camera at the mouse's position. I have been unsuccessful so far. The camera spins uncontrollably with both of the following scripts.

function rotate ()
    local pos = UIS:GetMouseDelta()
    local ray = cam:ScreenPointToRay(pos.X, pos.Y, 3000)

    local point, targPos = game.Workspace:FindPartOnRay(ray)

    cam.CFrame = CFrame.new(craft.Value.CG.Position - craft.Value.CG.CFrame.lookVector + Vector3.new(0,8, -8), targPos)
    cam.Focus = CFrame.new(targPos)
end

The above code spins faster and is far more uncontrollable than the code below.

function rotate ()
    local pos = UIS:GetMouseLocation()
    local ray = cam:ScreenPointToRay(pos.X, pos.Y, 3000)

    local point, targPos = game.Workspace:FindPartOnRay(ray)

    cam.CFrame = CFrame.new(craft.Value.CG.Position - craft.Value.CG.CFrame.lookVector + Vector3.new(0,8, -8), targPos)
end

The camera mode is scriptable and the function is bound to RenderStep. How would I go about solving my problem?

Thanks,

Ion

Answer this question