ric*_*ter 15
您无需切换配置.(可以切换,但你可能不应该.)
您可以在ARKit 2(iOS 12)中的世界跟踪配置中使用图像跟踪:
let configuration = ARWorldTrackingConfiguration()
configuration.detectionImages = // your images here
configuration.maximumNumberOfTrackedImages = 1 // or up to 4
// also set other options like plane detection and environment texture if you want
session.run(configuration)
Run Code Online (Sandbox Code Playgroud)
设置maximumNumberOfTrackedImages是将您的配置从图像检测(仅在图像首次出现时告诉您)更改为图像跟踪(告诉您图像何时移动,以60 fps为单位).
ARKit 2提供两种图像跟踪方式,以便您可以选择适合您需要的方式:
ARWorldTrackingConfiguration 带图像跟踪(如上所示)世界跟踪的所有其他功能(平面检测,环境纹理,命中测试,物体检测,世界地图保存/恢复),具有图像跟踪功能.
Pro:您可以将AR内容与跟踪图像相关联,并让它以其他方式与世界进行交互(即使在触发图像离开相机后仍然存在于桌面上).
Con:世界跟踪需要一个稳定,功能丰富的环境,因此它不能很好地移动参考帧,例如当用户在公共汽车上时(运动传感器混乱),平原或光线不足的环境(无需视觉跟踪) ,或者像厚厚的人群或海浪一样的移动背景(视觉跟踪混乱).
ARImageTrackingConfiguration只是图像跟踪:当图像在相机上时,您会获得一个实时更新的锚点.
这就是你想要创造的那种体验.如果你想让一张实体贺卡或海报或广告牌看起来像虚拟内容"活跃起来",而你不关心那些与现实世界交互的内容,请使用ARImageTrackingConfiguration.如果您正在以其他方式进行与世界互动的AR体验,并且您想要向其添加基于图像的内容,请使用ARWorldTrackingConfiguration+ detectionImages+ maximumNumberOfTrackedImages.
可能是一个坏主意.
每次run(configuration)使用与先前运行的会话不同的配置类型进行呼叫时,其所有跟踪状态都将被重置 - 它不知道交换机之前的任何锚定位置.
| 归档时间: |
|
| 查看次数: |
1480 次 |
| 最近记录: |