我尝试在视图控制器中创建两个视图,并同时运行它们,但这不起作用,ARView 超过了 ARSCNView,即使它没有连接到插座。然后我尝试将一个视图添加到另一个视图,但这也不起作用。
@IBOutlet var arView: ARView!
@IBOutlet var sceneView: ARSCNView!
Run Code Online (Sandbox Code Playgroud)
这对 ARView 来说是独立的:
let anchor = try! Glasses.loadScene()
arView.scene.anchors.append(anchor)
arView.session.run(ARFaceTrackingConfiguration())
Run Code Online (Sandbox Code Playgroud)
这适用于 ARSCNView,然后我跟踪委托函数中的所有内容
sceneView.session.run(ARFaceTrackingConfiguration())
sceneView.delegate = self
Run Code Online (Sandbox Code Playgroud)
这不起作用:
let ar = ARSCNView(frame: view.frame)
ar.delegate = self
ar.session.run(ARFaceTrackingConfiguration())
arView.addSubview(ar)
Run Code Online (Sandbox Code Playgroud)
这不起作用:
let ar = ARView(frame: view.frame)
let anchor = try! Glasses.loadScene()
ar.scene.anchors.append(anchor)
ar.session.run(ARFaceTrackingConfiguration())
sceneView.addSubview(ar)
Run Code Online (Sandbox Code Playgroud)
当我尝试将一个视图添加到另一个视图时,我注释掉了 session.run 调用,但这并没有什么区别。