I want to make a camera that will be able to roll sideways with the plane with the player still being able to look around and zoom.
The default camera does everything I want except the ability to roll.
Note: The camera type is changed when a player enters the jet plane. I don’t use the VehicleSeat camera.
local PLRS = game:GetService("Players")
local plr = PLRS.LocalPlayer
local char = PLRS.LocalPlayer.Character
local hum:Humanoid = char:WaitForChild("Humanoid",1)
local cam = workspace.CurrentCamera
-- I have a bunch of vars cause this script does some other stuff I just didn't want to send the entire thing
function resetCam()
if hum then
cam.CameraSubject = hum
end
end
resetCam()
Idk if I’m supposed to comment on a 8 month old convo but you can use a weld to do this (I know welds are deprecated but idk how to make it work on weldconstraints):
You have to set your cameratype to scriptable, then create a part (preferably parented under your plane/ship’s model) that will substitute as your camera.
Create a weld (also preferably parented under the model), then set the weld’s part0 to the primarypart of your plane/ship and part1 to your camera part, and adjust the C0 position so its at where the POV of the pilot would be.
Then you can get mousemovement using inputchanged and translate the mousemovements into changes in the C0 orientation.
Then use renderstepped to update the camera’s position to the camerapart’s position every frame.