Hello I am new at making the game and devforum but I need help, I have a problem with the first person camera. I think it makes it harder to see. too short. how do I change the camera position?
You can change the CameraOffset
property of the humanoid to something like 0,0,-1
.
if you want a clear first person camera you can go on players folder, in player and change this option:
It not work and same camera i think, I tried to change anything. here’s the script:
local RunService = game:GetService(“RunService”);
local Player = game.Players.LocalPlayer;
local Character = Player.Character or Player.CharacterAdded:Wait();
local Camera = game.Workspace.CurrentCamera;
local Head = Character:WaitForChild(“Head”);
local FPMaximumDistance = 0.6; – For scalability, but keep it at 0.6 since it is the right distance.
local FirstPersonLocalTransparency = 0;
local ThirdPresonLocalTransparency = 0;
local function SetCharacterLocalTransparency(transparency)
for i,v in pairs(Character:GetChildren()) do
if (v:IsA(“BasePart”)) then – Only baseparts have a LocalTransparencyModifier property.
v.LocalTransparencyModifier = transparency;
end
end
end
RunService.RenderStepped:Connect(function()
local isfirstperson = (Head.CFrame.Position - Camera.CFrame.Position).Magnitude < FPMaximumDistance; – Determine wether we are in first person
if (isfirstperson) then
SetCharacterLocalTransparency(FirstPersonLocalTransparency);
else
SetCharacterLocalTransparency(ThirdPresonLocalTransparency);
end
-----------------------------(( MAIN SCRIPT ))-----------------------------
for i, head in pairs(Character:GetDescendants()) do
if head.Name == "Head" then
head.Transparency = 1
end
end
-----------------------------(( MAIN SCRIPT ))-----------------------------
end)
so yeah i copy the script from devforum. and how do i add cameraoffset in the script?
game.Players.LocalPlayer.CameraMode = Enum.CameraMode.LockFirstPerson
Multiply workspace.CurrentCamera.CFrame
by CFrame.new(Vector3.new(0,0,-0.5))
Increase the 0.5 as needed. This is the value that the Camera is moved forward by, so that you don’t see your whole body.
This does the same thing as what @awry_y suggested.
You set the cameraOffset property of the humanoid. No need to add it just set it to the humanoid.
just Character.Humanoid.CameraOffset = Vector3.new(0,0,-1)
It works! Thanks all for helping me :> I’m glad to be in Devforum
Honestly the solution is basically what I had been saying to you but it’s fine if you weren’t able to understand it.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.