For the 2 days I have been attempting to find a way to rotate a camera left or right when a player moves left or right, however I couldn’t find anything about it and camera manipulation isn’t really my thing.
So if anyone can help me, or link me a topic that will solve my issue then that would be appreciated.
Its not that. its when the player moves left I want the camera to tilt left the camera is working fine when the player looks around it just want it so when the player moves left it will tilt left
Can you stick two parts on either side of the player somehow and do a while loop to make the camera CFrame in the parts depending on which key is pressed? That way if the player moves the part follows so the camera should update its position similarly to Enum.CameraType.Custom
I got it working, im gonna add some cframe lerping but other than that it works fine scorpions idea to use parts helped because that helped me figure out the rotation, but thanks everyone that responded.
if your want the code here it is:
local camera = workspace.Camera
local player = game:GetService("Players").LocalPlayer
local char = player.Character or player.CharacterAdded:wait()
local runService = game:GetService("RunService")
runService.RenderStepped:connect(function()
local humanoid = char:FindFirstChild("Humanoid")
if humanoid then
local a = false
local x,y,z = camera.CFrame:ToEulerAnglesXYZ()
if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.A) then
a = true
camera.CFrame = CFrame.new(camera.CFrame.Position) * CFrame.Angles(x,y,z) * CFrame.Angles(0,0,math.rad(2))
end
if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.D) then
a = true
camera.CFrame = CFrame.new(camera.CFrame.Position) * CFrame.Angles(x,y,z) * CFrame.Angles(0,0,math.rad(-2))
end
if a == false then
camera.CFrame = CFrame.new(camera.CFrame.Position) * CFrame.Angles(x,y,z)
end
end
end)