首页 文章

如何使用 ARKit 将 3D 对象放置在另一个对象之上?

提问于
浏览
2

我正在使用 Apple 给出的样品进行基于 AR 的 POC。

是否可以在 SceneKit 中将 3D 对象放置在另一个 3D 对象上方?

例如,我已经在桌子上方放置了花瓶等其他东西。如何实现呢?

因为据我所知,ARKit 仅检测地板表面,并且如果我尝试将花瓶放在已经保存的桌子上,那么它将花瓶放在与现有 3D 对象重叠的桌子下面。这可行吗?

1 回答

  • 3

    制作hitTest时,可以检查是否有任何节点:

    let results = sceneView.hitTest(checkLocation, options: [.boundingBoxOnly: true])
    guard let node = results.first?.node else { return }
    

    然后,您可以将新节点作为触摸节点的子节点。

相关问题