SuperAPI AI 工具集

ar-vr-xr

设计与创作

查看项目

更新于 10-16 10:40

技能介绍

用途

该技能用于 AR/VR/XR 开发,即构建增强现实、虚拟现实、混合现实应用以及空间体验。技能说明中明确其使用时机为开发这类应用或空间体验时。

覆盖平台与 SDK

技能提供了一份平台对照表,列出的平台、SDK 与目标设备包括:

  • Unity XR:SDK 为 XR Interaction Toolkit,目标设备为 Quest、Vision Pro、PCVR、移动端。
  • WebXR:SDK 为 Three.js、A-Frame、Babylon.js,目标为任意支持 WebXR 的浏览器。
  • ARKit:SDK 为 RealityKit、ARKit,目标为 iPhone、iPad、Vision Pro。
  • ARCore:SDK 为 Sceneform、ARCore,目标为 Android 设备。
  • Meta Quest:SDK 为 Meta XR SDK,目标为 Quest 2/3/Pro。
  • Apple Vision Pro:SDK 为 visionOS、RealityKit,目标为 Vision Pro。

主要能力与示例

Unity XR 部分给出了使用 XR Interaction Toolkit 的可抓取物体代码示例:通过继承 XRGrabInteractable,重写 OnSelectEntered 与 OnSelectExited,在物体被抓住和释放时执行逻辑。

WebXR 部分给出基于 Three.js 的示例:引入 VRButton,启用 renderer.xr,创建 VR 按钮,并在 setAnimationLoop 中通过 renderer.xr.getSession() 获取会话与 inputSources 来处理控制器输入,最后渲染场景。

Apple Vision Pro 部分给出 visionOS 的 SwiftUI 示例:在 RealityView 中生成球体网格与材质、创建 ModelEntity 并设置位置后加入内容,并通过 TapGesture().targetedToAnyEntity() 处理对实体的点击。

最佳实践与设计原则

Unity XR 最佳实践包括:按平台目标设定 72-120 FPS,帧率下降会导致眩晕;立体渲染使用单通道实例化(single-pass instanced rendering);尽量烘焙光照,动态光限制在 1-2 个;绘制调用移动 VR 低于 100、PCVR 低于 500;积极使用 LOD 组,因为 VR 中用户看不到远处细节。

XR 设计原则包括:舒适性方面避免人工移动,改用传送或房间尺度移动;交互上优先直接操作(抓取、指向)而非抽象 UI;UI 放置在世界空间、距离 1-3 米处,避免头锁 HUD;性能上帧率不可妥协,需激进优化;无障碍方面提供坐姿模式、可调缩放和色盲选项;空间音频使用 3D 音频(HRTF、ambisonics)以增强沉浸感和寻路。

适用场景

适用于在 Quest、Vision Pro、PCVR、移动设备或 WebXR 浏览器上开发沉浸式体验的开发者,帮助进行平台选型并遵循 XR 性能与交互规范。

限制与未提供信息

资料未提供该技能的安装方式、使用步骤、收费或价格信息,也未说明具体支持的功能边界。