https://gyazo.com/a476eca92dae1f9d41602b9069125f82
I want the camera to rotate around the character, but it rotates around itself...
You can see the unwanted behavior in the GIF above.
UserInputService.InputChanged:Connect(function(input) if (input.UserInputType == Enum.UserInputType.MouseMovement) then xAngle = xAngle - input.Delta.X yAngle = math.clamp(yAngle - input.Delta.Y, -80, 80) end end) RunService.RenderStepped:Connect(function(dt) local CameraX = CurrentCamera.CFrame.X + (HumanoidRootPart.Position.X + OFFSET.X - CurrentCamera.CFrame.X)*0.1*(1+dt) local CameraY = CurrentCamera.CFrame.Y + (HumanoidRootPart.Position.Y + OFFSET.Y - CurrentCamera.CFrame.Y)*0.2*(1+dt) local CameraZ = CurrentCamera.CFrame.Z + (HumanoidRootPart.Position.Z + OFFSET.Z - CurrentCamera.CFrame.Z)*0.2*(1+dt) local CameraCFrame = CFrame.new(CameraX, CameraY, CameraZ)*CFrame.Angles(0,rad(xAngle),0)*CFrame.Angles(rad(yAngle),0,0) local TargetCFrame = CameraCFrame + CameraCFrame:VectorToWorldSpace(Vector3.new(OFFSET.X, OFFSET.Y, -50000)) CurrentCamera.CFrame = CFrame.new(CameraCFrame.Position, TargetCFrame.Position) end)