SuperAPI AI 工具集

arkit-spatial-tracking-providers

智能体与模型

查看项目

更新于 10-16 10:56

技能介绍

ARKit Spatial Tracking Providers 是一个面向 visionOS 27 的 ARKit 空间追踪开发技能,用于构建和调试空间追踪 Provider。其核心目标是帮助开发者按任务识别所需的空间信号,并选择、组合与运行对应的 Provider。

【用途与定位】 该技能用于处理设备/世界位姿、检测到的平面、场景网格、房间状态以及共享坐标这几类空间信息。它强调先识别信号类型,再加载匹配的参考资料,而不是一次性引入所有 Provider。

【主要能力与参考文档】 技能内置以下参考文档,并按适用条件加载:

  • session-basics.md:用于设置 ARKitSession、授权、事件、运行重试或清理时。
  • anchor-processing.md:用于对账 anchor ID、anchorUpdates 与模型层状态时。
  • realitykit-bridge.md:当空间状态需要变成可见的 RealityKit 内容时。
  • world-tracking-provider.md:使用 WorldTrackingProvider 获取设备位姿或世界锚点时。
  • plane-detection-provider.md:使用 PlaneDetectionProvider 处理水平或垂直表面时。
  • scene-reconstruction-provider.md:使用 SceneReconstructionProvider 处理网格锚点时。
  • room-tracking-provider.md:使用 RoomTrackingProvider 获取房间级上下文时。
  • shared-coordinate-space-provider.md:使用 SharedCoordinateSpaceProvider 处理多参与者坐标空间时。 若需要在不相关的 ARKit 能力之间选择 Provider,则切回 $arkit-visionos-developer。

【使用方式与工作流】

  1. 在构建运行列表前,检查 Provider 支持情况与所需授权。
  2. 显式构建 Provider 列表,不要把不相关的 Provider 隐藏在共享会话辅助工具中。
  3. 启动长生命周期 ARKitSession,观察 session.events,并在清理时取消更新任务。
  4. 在 run(_:) 抛出异常或 Provider 进入停止状态后重试前,重新创建 Provider 实例。

【约束与边界】

  • 使用 WorldTrackingProvider 处理世界锁定内容与位姿查询,不用于属于平面或网格 Provider 的表面语义。
  • 将平面、网格、房间与共享坐标数据视为不同的坐标契约,未设显式模型层边界时不要合并。
  • 在等待 Provider 更新序列时,不要阻塞主 actor。

【输出预期】 应给出:所选的空间 Provider 集合;使用了哪些共享与 Provider 参考;授权与会话生命周期模型;锚点状态模型以及适用的 RealityKit 桥接。

【适用场景】 适用于 visionOS 27 上需要世界追踪、平面检测、场景重建、房间追踪或多参与者共享坐标空间的应用开发与调试。

【暂未提供】 该技能的收费方式、价格、支持的具体平台版本细节、安装命令以及代码示例,在现有资料中暂未提供。