Quest 3 和 Quest 3S 的 “透视摄像头 API(Passthrough Camera API)” 现在已可在 Meta Horizon Store 上发布的正式应用中使用。
这项功能六周前以“实验性版本”的形式向所有开发者开放,这意味着开发者可以进行测试,并理论上可以将包含该功能的 APK 文件通过 SideQuest 等渠道分发。但在当时,还不能将其集成到提交至 Meta Horizon Store 的应用中。
随着 Meta XR Core SDK v76 的发布,这一功能现已脱离实验状态,因此可以在经过审核流程后,被用于正式上架的应用中。
虽然像 Quest 3 这样的头显设备本身已经通过摄像头实现了对现实世界的“透视”功能,但直到最近,只有系统软件才能直接访问这些摄像头的原始数据。第三方开发者虽然可以将透视画面作为背景显示在应用中,但实际上并不能真正访问或处理这些图像流。
他们所能使用的,是系统根据摄像头信息处理后提供的高层次数据,例如手部和身体骨骼坐标、房间环境的 3D 网格模型以及家具边界框、有限的对象追踪能力等。这种限制使得开发者无法运行自己的计算机视觉模型,严重限制了增强体验的可能性。
现在,“透视摄像头 API”正式启用意味着:只要用户授权,开发者就可以访问摄像头的原始图像数据。
与应用程序请求麦克风权限类似,用户需要手动授予应用访问头显摄像头的权限。一旦获得授权,应用即可访问前置彩色摄像头及其相关元数据,例如镜头内参(lens intrinsics)和头显姿态(headset pose),从而支持开发者运行自定义的计算机视觉模型。
借助这项功能,应用可以实现以下创新:
扫描并追踪二维码
检测桌面上的游戏棋盘,并在其上叠加虚拟角色与物体
在企业引导场景中识别物理对象
集成基于云端大型语言模型(LLM)的视觉 AI 功能
开发者的想象力是唯一的限制因素——当然还要考虑硬件性能与成本。目前受限于 XR2 Gen 2 芯片组的算力,实时运行复杂模型的能力有限;或者可以选择调用云端图像分析服务,但这通常涉及额外费用。
分辨率:每颗摄像头最高支持 1280×960
帧率:30 FPS
延迟:约 40–60 毫秒
由于延迟较高、帧率有限,该摄像头流不适合用于追踪快速移动的物体(如自制控制器)或识别细节特征(如小字体文本)。
从技术角度来说,实际上并没有一个专门的“Meta Quest 摄像头透视 API”。开发者只需在应用中请求特定于 Horizon OS 的 Headset Cameras 权限,其余部分则利用 Android 已有的 Camera2 API 实现,同时通过 OpenXR 接口获取头显姿态信息。这也意味着,如果 Google 的 Android XR 平台未来上线,开发者只需修改权限请求逻辑,就能在三星即将推出的独立式头显上复用相同代码。
对于 Unity 引擎开发者来说,可以通过 WebCamTexture API 访问摄像头,这也是 Unity 中访问手机、平板或 PC 摄像头的标准方式。但需要注意的是,Unity 的 WebCamTexture API 目前一次只能访问一颗摄像头,而不能同时访问左右双摄像头。
Meta 官方已在 GitHub 上发布了五个适用于 Unity 的官方示例项目:
CameraViewer
CameraToWorld
BrightnessEstimation
MultiObjectDetection
ShaderSample
此外,Meta 软件工程师 Roberto Coviello 也在 GitHub 上开源了 QuestCameraKit,其中包含更多实用示例:
Color Picker(颜色选择器)
Object Detection(物体识别)
QR Code Tracking(二维码追踪)
Frosted Glass Shader(磨砂玻璃着色器)
OpenAI Vision Model(OpenAI 视觉模型集成)
你可以在这里找到相关的开发者文档:
VR52网成立于2015年,平台提供VR头显、AR眼镜、配件外设、厂商、测评、行业资讯、游戏与应用、展会活动等。