Когда все сделано таким образом, вы все еще можете видеть вид AR позади контроллера представления наложения, и сцена продолжает отображаться.
м приложении ARKit я представляю модальное окно. Когда я закрываю модальный режим и возвращаюсь к ARSCNView, я обнаруживаю, что сессия приостановлена из-за этого кода:
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Pause the view's session
sceneView.session.pause()
}
Когда я закрываю модальное окно и возвращаюсь к экрану просмотра камеры ARKit, этот код срабатывает:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Create a session configuration
let configuration = ARWorldTrackingSessionConfiguration()
// Run the view's session
sceneView.session.run(configuration)
}
Но этот код никогда не возобновляет сеанс. Экран полностью заморожен на последнем прочитанном изображении. Есть идеи?
Я обновляю код viewDidAppear следующим образом. Он все еще застрял на экране камеры с замороженным изображением.
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Create a session configuration
let configuration = ARWorldTrackingSessionConfiguration()
sceneView.session.delegate = self
if self.isPaused {
sceneView.session.run(sceneView.session.configuration!)
} else {
// Run the view's session
sceneView.session.run(configuration)
}
}