【问题标题】:How to update the SpriteKit node for an ARAnchor?如何更新 ARAnchor 的 SpriteKit 节点?
【发布时间】:2021-03-12 23:09:44
【问题描述】:

我有一个基于 SpriteKit 的 ARKit 应用程序,它在 AR 空间的各个锚点处显示 SKSpriteNode。我使用ARSKViewDelegate 方法为每个锚点提供节点

func view(_ view: ARSKView, nodeFor anchor: ARAnchor) -> SKNode?

这在我第一次添加锚点时有效,但在运行时我想将一些锚点的节点切换到不同的节点。如何强制ARSKView“刷新”并再次调用该节点以获取锚点方法?

【问题讨论】:

    标签: swift sprite-kit augmented-reality arkit


    【解决方案1】:

    使用view(_:didUpdate:for:)实例方法。

    此方法告诉委托 SpriteKit 节点的属性已更新以匹配其相应锚点的当前状态。

    optional func view(_ view: ARSKView, 
               didUpdate node: SKNode, 
                   for anchor: ARAnchor)
    

    不要忘记委托允许您使用提到的方法:

    weak var delegate: ARSKViewDelegate? { get set }
    

    【讨论】:

      猜你喜欢
      • 2019-01-09
      • 2015-05-25
      • 1970-01-01
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      相关资源
      最近更新 更多