寻求Oculus Quest 3 MR游戏中禁用Guardian边界的解决方案
Oculus Quest 3 MR开发:Guardian禁用与录制设置解决方案
一、普通用户无需开发者模式禁用Guardian并保留Passthrough
- 申请Guardian Override系统权限:在Oculus开发者后台的应用配置页面,找到权限设置并启用「Guardian Override」权限。之后在应用代码中调用对应API动态控制Guardian显示:
- Unity环境:使用
OVRManager.SetGuardianVisible(false) - Unreal环境:调用
IOculusXRGuardianFunctionLibrary::SetGuardianVisible(false)
配置完成后,普通用户无需开启开发者模式,启动应用时Guardian会自动隐藏,Passthrough功能不受影响。
- Unity环境:使用
- 用户手动临时隐藏方案:如果不想申请系统权限,可以引导用户通过Quest 3快捷操作隐藏Guardian——长按Oculus按钮呼出快捷菜单,选择「Guardian」->「Hide Guardian」。该操作无需开发者模式,但需要用户手动执行,适合对权限申请有顾虑的场景。
二、录制时保留Passthrough并禁用Guardian的设置方法
- 编辑器内录制(Unity/Unreal):在Play模式录制前,通过代码临时关闭Guardian并确保Passthrough开启,录制结束后恢复状态。以Unity为例:
// 准备录制 OVRManager.isPassthroughEnabled = true; OVRManager.guardianVisible = false; // 启动录制(使用OVRRecorder API) OVRRecorder.StartRecording(OVRRecorder.VideoQuality.High); // 录制结束后恢复 OVRRecorder.StopRecording(); OVRManager.guardianVisible = true;
- 设备本地录制:利用应用内触发录制的方式,在启动录制前通过代码禁用Guardian,录制完成后恢复。这种方式下,Quest 3本地保存的录制视频会包含Passthrough画面且无Guardian边界。
- PC端OBS录制(Oculus Link):通过Oculus Link连接PC后,在PC端Oculus软件中开启Passthrough显示,同时在应用内通过代码禁用Guardian,OBS捕获的画面将保留Passthrough且不显示Guardian。
内容的提问来源于stack exchange,提问作者Руслан Василев
相关产品推荐
相关产品推荐

