【发布时间】:2020-06-11 14:08:24
【问题描述】:
我正在尝试使用 ARKit 来验证玩具的位置。我有一个 ARObject 扫描资源,将玩具放在相机视图中效果很好。换句话说,SCNScene 和ARSession 中的didAdd 和didUpdate 在玩具被放置在相机视图后的合理时间内按预期调用。但是当我将玩具从相机视图中移开时,didRemove 不会 not 被调用,SCNScene 和 ARSession 都不会调用。
我确实读过这种行为的宣传,说“好吧,ARKit 不知道它是否真的被移除了,它仍然可能指日可待”,但这是相当不切实际的假设。有关此功能的整个 Apple 文档是“ARKit 可能会自动删除锚点”,但没有说明何时以及为什么。我知道isTracked,但ARObjectAnchor 似乎是唯一不实现ARTrackable 的ARAnchor 子类。
我能想到的唯一绝望的黑客是当 didUpdate 停止被调用时的某种模糊超时,因为这是删除对象 AFAIK 的唯一效果。我是否忽略了ARWorldTrackingConfiguration 中的某些内容?请问?
【问题讨论】: