美文网首页
ARKit基础(一)——ARkit环境搭建

ARKit基础(一)——ARkit环境搭建

作者: 梁间 | 来源:发表于2018-08-16 19:50 被阅读0次

    空间中放置了一架飞船,这是一个最基础的ARkit世界,首先了解几个基本的概念:

    ARKit与SceneKit
    ARkit负责相机捕捉现实世界图像,SceneKit负责在图像中显示3D模型

    ARSCNView
    基础视图容器类,用于显示AR内容,继承于SCNView,SCNView继承与UIView。

    ARSession
    每一个ARSCNView包含一个ARSession,用于管理底层设备,是底层数据与AR视图之间的桥梁。

    SCNScene
    3D场景,包含几何模型,灯光相机和其他属性。

    ARWorldTrackingSessionConfiguration
    追踪相机捕捉平地。

    代码:

    #import "ARKitBaseViewController.h"
    
    @interface ARKitBaseViewController ()<ARSCNViewDelegate>{
        IBOutlet ARSCNView *sceneView;
    }
    
    @end
    
    @implementation ARKitBaseViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        
        // 创建一个场景
        SCNScene *scene = [SCNScene sceneNamed:@"art.scnassets/ship.scn"];
        // 把场景赋值给sceneView
        sceneView.scene = scene;
    }
    
    - (void)viewWillAppear:(BOOL)animated {
        [super viewWillAppear:animated];
        
        // 创建一个 session configuration
        ARWorldTrackingConfiguration *configuration = [ARWorldTrackingConfiguration new];
        // 运行 session
        [sceneView.session runWithConfiguration:configuration];
        // 显示特征点(屏幕中的黄点)
        sceneView.debugOptions = ARSCNDebugOptionShowFeaturePoints;
    }
    
    - (void)viewWillDisappear:(BOOL)animated {
        [super viewWillDisappear:animated];
        // 暂停 session
        [sceneView.session pause];
    }
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
    }
    
    @end
    

    相关文章

      网友评论

          本文标题:ARKit基础(一)——ARkit环境搭建

          本文链接:https://www.haomeiwen.com/subject/rdurvftx.html