Используйте SCNView вместо ARSCNView, если он не поддерживается

Мне нужно показать 3D-модель через ARKit, используя ARSCNView, однако, если у пользователя есть неподдерживаемое устройство A8- или iOS версии 10-, поэтому приложение будет использовать SCNView.

Можно ли сохранить это в одном ViewController и Storyboard?

Как мне запустить sceneView в Objective-C?

if (ARConfiguration.isSupported) {
      // use ARSCNView
} else {
      // use SCNView
}

person Dr_Mom    schedule 07.11.2017    source источник


Ответы (1)


В раскадровке используйте ARSCNView и добавьте к резервному варианту ViewController SCNView:

override func loadView() {
    if (!ARConfiguration.isSupported) {
        print("ARKit not supported, using SCNView")
        view = SCNView(frame: NSRect(x: 0, y: 0, width: 640, height: 480))
    } else {
        super.loadView() // Use ARSCNView from storyboard
    }
}
person Ef Dot    schedule 07.11.2017