I made a custom camera from a part that rotates around the character wherever the mouse moves, it works decently well. The problem is that 1. it moves WAY too fast, and 2. if you put your mouse on the far ends of the screen, the camera will spin extremely fast. I’m pretty sure number 2. is caused by pointing the mouse at the skybox, making it almost infinite because I am using mouse.Hit.p for this. I was thinking about only rotating the camera based on the mouse’s X axis, but I can’t find how to do that, I could only find mouse.Hit.p. If someone gives me a way to rotate this around only the X axis of the mouse, I will still mark it as a solution.
GIF: https://gyazo.com/732a810842ae63a3ca7a2f3f1aa263cb
SCRIPT:
RS.RenderStepped:connect(function()
if c.Humanoid ~= nil and c.Humanoid.Health > 0 then
local CamPos = CFrame.new(c.HumanoidRootPart.Position, mouse.Hit.p) * CFrame.new(0,4,9).p
BP.Position = CamPos
workspace.CurrentCamera.CameraType = "Scriptable"
workspace.CurrentCamera.CFrame = CFrame.new(CamBlock.Position, mouse.Hit.p)