我想在每帧显示当前设备位置。
我对iOS应用程序开发非常陌生,因此不胜感激。
我想知道每次框架更新时如何运行某些功能。

func session(_ session: ARSession, didUpdateFrame frame: ARFrame) {
    statusMessage.text = "Frame Updated"
}

这不起作用,因为ARSession不会进入'didUpdateFrame'状态。

最佳答案

也许您忘记了设置代表。在您的ViewController中采用ARSessionDelegate。然后,在viewWillAppear中将委托设置为您自己

 sceneView.session.delegate = self

现在应该执行方法updateFrame。
func session(_ session: ARSession, didUpdate frame: ARFrame) {
    print("Frame Updated")
}

另一方面,您也可以使用SCNSceneRendererDelegate和renderer(_:updateAtTime:)方法在动画/动作等之前设置视图。

07-27 13:40