ARKit类初印象

作者: 叶子扬 | 来源:发表于2018-01-13 15:59 被阅读29次

    ARSession

    作用:管理增强现实体验所需的设备摄像头和运动处理的共享对象

    ARSession主要做了以下几件事:

    • 从设备的运动传感硬件中读取数据
    • 控制设备的内置摄像头
    • 对捕获的摄像头图像执行图像分析

    使用ARKit,需要创建一个单例的ARSession对象。如果你是使用ARSCNView或者ARSKView对象创建虚拟平面,这个平面默认已经包含一个ARSeeeion实例了。如果你是自定义渲染AR内容,你需要手动创建并且持有一个ARSession

            /*
             Start the view's AR session with a configuration that uses the rear camera,
             device position and orientation tracking, and plane detection.
            */
            let configuration = ARWorldTrackingConfiguration()
            configuration.planeDetection = .horizontal
            sceneView.session.run(configuration)
    
            // Set a delegate to track the number of plane anchors for providing UI feedback.
            sceneView.session.delegate = self
    

    运行session还需要一个ARConfiguration对象,或者他的子类ARWorldTrackingConfigration。这些类决定了ARKit将如何根据现实场景追踪设备的位置和运动,进而影响你创建的各种AR体验。

    ARConfiguration

    用于AR session设置的抽象基类,它有三个子类:

    开发调试中几个有用的设置

    改变颜色

    plane.firstMaterial?.diffuse.contents = UIColor.red
    

    显示统计

     sceneView.showsStatistics = true
    

    显示坐标系
    红黄蓝分别代表x、y、z轴,手机上默认是左手坐标系

     sceneView.debugOptions = ARSCNDebugOptions.showWorldOrigin
    

    显示特征点

    sceneView.debugOptions = ARSCNDebugOptions.showFeaturePoints
    

    github code

    参考:
    ARKit
    Building an AR app with ARKit and Scenekit
    带操作步骤# how to convert .dae to .scn files in SceneKit
    how to convert .dae to .scn files in SceneKit
    带工具使用提示# How to create realistic .scn files?
    # Change color of SCNNode/Geometry/Material

    相关文章

      网友评论

        本文标题:ARKit类初印象

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