ARKit与SceneKit的关系

AR技术叫做虚拟增强现实,也就是在相机捕捉到的现实世界的图像中显示一个虚拟的3D模型。这一过程可以分为两个步骤:

一:相机捕捉现实世界图像,由ARKit来实现

二:在图像中显示虚拟3D模型,由SceneKit来实现

下图是一个框架关系图

继承:子类拥有父类所有的属性及方法

1.框架中中显示3D虚拟增强现实的视图ARSCNView继承于框架中的SCNView,而SCNView又继承于框架中的UIView

UIView的作用是将视图显示在iOS设备的window中,SCNView的作用是显示一个3D场景,ARScnView的作用也是显示一个3D场景,只不过这个3D场景是由摄像头捕捉到的现实世界图像构成的

2.ARSCNView只是一个视图容器,它的作用是管理一个ARSession,笔者称之为AR会话。

3.在一个完整的虚拟增强现实体验中,框架只负责将真实世界画面转变为一个3D场景,这一个转变的过程主要分为两个环节:由ARCamera负责捕捉摄像头画面,由ARSession负责搭建3D场景。

4.在一个完整的虚拟增强现实体验中,将虚拟物体现实在3D场景中是由框架来完成中:每一个虚拟的物体都是一个节点SCNNode,每一个节点构成了一个场景SCNScene,无数个场景构成了3D世界

5.综上所述,ARKit捕捉3D现实世界使用的是自身的功能,这个功能是在iOS11新增的。而ARKit在3D现实场景中添加虚拟物体使用的是父类SCNView的功能,这个功能早在iOS8时就已经添加(SceneKit是iOS8新增)

results matching ""

    No results matching ""