Исправить положение SCNNode после того, как изображение трекера AR не отображается
У меня есть простой проект, который включает в себя размещение 3D-модели на предопределенном изображении для отслеживания с помощью SceneKit и ARImageAnchor. Как только камера видит эталонное изображение, узел объекта прикрепляется к трекеру с помощью ARAnchor и отслеживает точно. Однако, как только трекер исчезает из поля зрения, rootNode, к которому привязан якорь, автоматически устанавливается на isHidden. Когда трекер закрыт, ARanchor не остается фиксированным в последней известной позиции, а вместо этого перемещается в исходную точку камеры.
Можно ли зафиксировать положение якоря относительно камеры, даже если трекер не виден?
Настройка режима слежения и запуск сцены:
let configuration = ARImageTrackingConfiguration()
guard let arTrackers = ARReferenceImage.referenceImages(inGroupNamed: "AR Resources", bundle: nil) else {return}
configuration.trackingImages = arTrackers
// Run the view's session
sceneView.session.run(configuration)
Создание SCNscenerenderer и присоединение узла к rootNode/ARAnchor:
guard anchor is ARImageAnchor else {return}
guard let container = sceneView.scene.rootNode.childNode(withName: "container", recursively: false) else {
print("containerError")
return
}
container.removeFromParentNode()
node.addChildNode(container)
container.isHidden = false
}