开发者社区> 问答> 正文

ARView和ARSCNView是否可以共存?

我尝试在一个视图控制器中创建这两个视图,并同时运行它们,但是这不起作用,ARView超越了ARSCNView,即使它没有连接到一个出口。然后我尝试将一个视图添加到另一个视图中,但这也不起作用。

@IBOutlet var arView: ARView!
@IBOutlet var sceneView: ARSCNView!

这对于ARView来说是独立的:

let anchor = try! Glasses.loadScene()
  arView.scene.anchors.append(anchor)
  arView.session.run(ARFaceTrackingConfiguration())

这对于ARSCNView来说是独立的,然后我跟踪委托函数中的所有内容。

sceneView.session.run(ARFaceTrackingConfiguration())
  sceneView.delegate = self

这是行不通的:

let ar = ARSCNView(frame: view.frame)
  ar.delegate = self
  ar.session.run(ARFaceTrackingConfiguration())
  arView.addSubview(ar)

这是行不通的:

let ar = ARView(frame: view.frame)
 let anchor = try! Glasses.loadScene()
 ar.scene.anchors.append(anchor)
 ar.session.run(ARFaceTrackingConfiguration())
 sceneView.addSubview(ar)

当我尝试将一个视图添加到另一个视图时,我注释掉了session.run调用,但这并没有什么区别。

展开
收起
游客5akardh5cojhg 2019-12-24 12:52:34 12801 0
1 条回答
写回答
取消 提交回答
  • 使用SceneKit添加3D对象到AR体验

    var session: ARSession AR session为视图内容管理运动跟踪和相机图像处理

    var scene: SCNScene SceneKit场景显示在视图中

    响应AR更新 var delegate: ARSCNViewDelegate? 提供了调节视图的AR场景信息同步的方法

    protocol ARSCNViewDelegate 你可以实现ARSCNViewDelegate的方法来调节视图的AR场景信息同步

    映射内容到现实世界的位置 func anchor(for: SCNNode) 返回关联了特定场景节点的AR锚点

    func node(for: ARAnchor) 返回关联了特定场景锚点的AR节点

    管理场景灯光 var automaticallyUpdatesLighting: Bool 一个布尔值,表示是否创建和更新视图场景中的灯光

    调试AR显示 struct ARSCNDebugOptions 选项值,绘制覆盖内容帮助调试场景视图中AR轨迹

    关系 继承自 SCNView

    遵循

    CVarArg

    Equatable

    Hashable

    UIAccessibility Identification

    UIPaste Configuration Supporting

    2021-02-26 14:41:35
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
封闭的冲突与开放的和平 立即下载
LOCKet:安全源于独立 立即下载
安全,源于独立 立即下载