ARWorldTrackingConfiguration
一种配置,使用后置摄像头,跟踪设备的方向和位置,并检测真实世界的表面,以及已知的图像或对象。
声明
class ARWorldTrackingConfiguration : ARConfiguration
概览
所有AR配置都建立了设备所在的现实世界与虚拟3D坐标空间之间的对应关系,你可以在其中建模内容。当你的应用程序将该内容与实时摄像机图像一起显示时,用户会会体验到你的虚拟内容是现实世界的一部分。
在空间之间创建和维护这种对应关系需要跟踪设备的运动。ARWorldTrackingConfiguration用六个自由度(6DOF)跟踪设备的移动:具体是,三个旋转轴(滚动,俯仰和偏转),三个平移轴(运动中的x,y和z)。
这种跟踪可以创建身临其境的AR体验:虚拟对象可以看起来与现实世界保持在相同的位置,即使用户倾斜设备以查看对象的上方或下方,或者移动设备以查看物体的侧面和后面。
图1
无论设备旋转或移动,6DOF跟踪都会保持AR错觉
世界跟踪会话还为你的应用提供了多种方式来识别或与相机可见的真实场景元素进行交互:
使用planeDetection找到真实世界的水平或垂直表面,将其作为ARPlaneAnchor对象添加到会话。
使用detectionImages识别和追踪已知的2D图像的运动,将其作为ARImageAnchor添加到场景。
使用detectionObjects识别已知的3D对象,将其作为ARObjectAnchor添加到场景。
使用上的命中测试方法ARFrame,ARSCNView或ARSKView找到与像机视图中的2D位置相一致的真实世界的3D位置。
话题
创建配置
- init()
初始化一个新的世界跟踪配置。
+ new
创建一个新的世界跟踪配置。
从先前AR会话尝试使用此会话配置恢复的状态。
启用平面检测
指定会话是否以及如何尝试自动检测摄像头捕获图像中的平面的一个值。
选择ARKit是否以及如何检测捕获图像中的平面。
启用图像检测和跟踪
ARKit尝试在用户环境中检测的一组图像。
同时跟踪运动的最大检测图像数。
启用3D对象检测
一组3D对象,供ARKit尝试在用户环境中进行检测。
使用基于环境的照明
ARKit用于生成环境纹理的行为。
用于在世界跟踪AR会话中生成环境纹理的选项。
在世界跟踪AR会话中为特定空间区域提供环境照明信息的对象。
管理设备摄像头行为
一个布尔值,用于确定设备相机是使用固定焦点还是自动对焦行为。
关系
继承自
另外
世界追踪
创建运行AR会话的应用程序,并使用平面检测使用SceneKit放置3D内容。
发现支持概念,功能和最佳实践,以构建出色的AR体验。
有关在世界跟踪AR会话中检测到的真实世界平面的位置和方向的信息。