Создание SCNMaterial с AVCaptureDevice во время выполнения будет зависать в течение 3 секунд? - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь создать SCNNode с SCNMaterialProperty, используя AVCaptureDevice. Однако когда я делаю это во время выполнения, приложение будет зависать случайным образом от 3 до 5 секунд ?? Кто-нибудь из братьев пробовал это раньше? и как это решить?

@IBAction func tapBack(_ sender: Any) {


        if let cam = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back){

            let scene = SCNScene()

            let box = SCNBox(width: 1.0, height: 1.0, length: 1.0, chamferRadius: 0)
            box.materials.first?.diffuse.contents = cam
            let boxNode = SCNNode(geometry: box)

            let cameraNode = SCNNode()
            cameraNode.camera = SCNCamera()
            cameraNode.position = SCNVector3(0, 0, 10)


            scene.rootNode.addChildNode(boxNode)
            scene.rootNode.addChildNode(cameraNode)

            SCNTransaction.begin()
            self.sceneView.scene = scene
            SCNTransaction.commit()
        }

    }
...