override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
sceneView.session.pause()
sceneView.removeFromSuperview()
sceneView = nil
}
确保在使用闭包时避免循环引用。使用weak self进行引用,但是仅在确保不会被意外释放时才可以使用。
VNImageRequestHandler(ciImage: ciImage, orientation: orientation, options: [:]).perform([request]) { [weak self] request, error in
guard let self = self else { return }
// perform completion handler code here
}
sceneView.autoenablesDefaultLighting = true
sceneView.automaticallyUpdatesLighting = true
autoreleasepool {
// perform ARKit and Vision code here
}
上一篇:ARKit实体和模型