Any way to disable the Third Person toggle in Quest VR?

When clicking the Right Joystick in VR, it toggles a third person camera and a first person camera.
I would like to disable this toggle and force it to be first person only.

For whatever reason, the Camera Mode LockFirstPerson doesn’t seem to actually force First Person view in VR, and I haven’t found any solution to this despite searching in multiple places.

I have a script that sets CameraMode to LockFirstPerson and I also have the default camera mode set to LockFirstPerson, yet it still starts the game in Third Person and has the toggle enabled.

Here is a screenshot of in-game (the arms are moved by another script and are practically attached to the camera)


image

If my code is needed:

local UserInputService = game:GetService("UserInputService")
local PlayersService = game:GetService("Players")
local RunService = game:GetService("RunService")
local VRService = game:GetService("VRService")

local LocalPlayer = PlayersService.LocalPlayer
local ForceVRMode = false

local function IsEnteredVR()
	return (UserInputService.VREnabled or (ForceVRMode and RunService:IsStudio()))
end

LocalPlayer.CharacterAdded:Connect(function(character)
	LocalCharacter = character
end)

if IsEnteredVR() then
	LocalPlayer.CameraMode = Enum.CameraMode.LockFirstPerson
end
1 Like

Hi! First, LockFirstPerson is probably only for desktop play. I attempted to break out my headset and check myself, but it died :skull:

I do have an idea, however since I was unable to verify it will work myself (and I havent found anything on it with my 3 minutes of googling) You could potentially use ContextActionService to unbind certain actions, for example, on desktop, if I wanted to unbind the forward movement key, id use

local contextActionService = game:GetService(“ContextActionService”)
contextActionService:UnbindAction(“moveForwardAction”)

That is assuming, of course, the action shows up in the developer console (press F9, click the toggle down button, click ActionBindings, look in the “ActionName” column.)

Other than that, suppose you could probably manually force the character by checking if the camera is in third person, although I don’t know if PC formulas (or other methods) for that would work on VR. Apologies if this is a dead end

2 Likes

You also have to set CameraMaxZoomDistance to 0.5 if you want it to be first person only, for some reason the built in player module only looks at that.

1 Like