Augmented Reality

Use when working with augmented reality — ARKit, ARCore, WebXR, spatial computing

liaosw97 Updated

File contents

核心原则

  • 虚实融合:实现虚拟内容与现实环境的自然融合
  • 用户体验优先:设计直观自然的交互方式,避免用户疲劳
  • 性能优化:在有限移动设备资源下实现流畅的AR体验
  • 环境感知:准确理解真实环境的几何和语义信息
  • 隐私安全:妥善处理摄像头数据和用户隐私

技术栈

  • ARKit:Apple原生AR开发框架,支持iOS设备的高级AR功能
  • ARCore:Google跨平台AR框架,支持Android和iOS设备
  • Unity AR Foundation:跨平台AR开发框架,统一ARKit和ARCore接口
  • Vuforia:企业级AR开发平台,支持图像识别和物体追踪
  • Niantic Lightship:专业AR开发平台,提供VPS和语义理解能力
  • WebXR:Web端AR/VR标准API,支持浏览器AR应用
  • OpenXR:跨平台XR开放标准,统一设备接口规范
  • RealityKit/SceneKit:Apple 3D渲染框架,支持高质量AR渲染

最佳实践

  1. 场景设计与融合:合理设计虚拟内容与真实环境的融合方式;使用环境光估计实现一致的光照效果;实施遮挡处理让虚拟物体正确被真实物体遮挡;设计合理的虚拟物体尺寸和位置

  2. 追踪与定位:利用SLAM技术实现稳健的六自由度追踪;使用世界锚点固定虚拟物体位置;实施VPS(视觉定位系统)实现大规模空间定位;设计追踪丢失恢复机制

  3. 交互设计:设计直观的手势交互,如点击、拖拽、旋转、缩放;利用射线检测实现精准的物体选择;支持语音命令增强交互效率;提供视觉反馈引导用户操作

  4. 性能优化:优化3D模型多边形数量,移动端建议低于100K三角形;使用LOD技术根据距离动态调整模型细节;实施遮挡剔除减少不必要的渲染开销;优化着色器复杂度避免性能瓶颈

  5. 跨平台开发:使用AR Foundation等抽象层实现代码共享;针对平台特性进行差异化适配;测试覆盖主流设备和系统版本;建立设备能力检测和降级方案

关键约定

  1. AR场景帧率应保持 60fps 以上,避免眩晕感
  2. 虚拟物体距离摄像头建议在 0.5m-10m 范围内
  3. 3D模型纹理尺寸建议不超过 1024x1024,保证加载速度
  4. 使用右手坐标系,Y轴向上,与ARKit/ARCore保持一致
  5. 摄像头使用需明确告知用户,提供隐私说明和权限请求

liaosw97/awesome-rules-skills/tree/main/plugins/interactive-media/skills/augmented-reality commit fba6a3df8d

Frequently asked questions

npx skillmds@latest add liaosw97/augmented-reality