ARFoundation从零开始1-ARFoundation简介

一、AR、VR、MR

VR:虚拟现实(Virtual Reality),利用计算机生成一种模拟环境,使用户沉浸到该环境中

AR:增强现实(Augmented Reality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像技术,是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。

MR:混合现实(Mixed Reality),在虚拟世界、现实世界和用户之间搭起一个交互反馈的信息回路,以增强用户体验的真实感。

二、AR和ARFoundation

AR有两种类型:

一种是基于计算机视觉的AR:利用计算机视觉方法建立现实世界与屏幕之间的映射关系,使我们想要绘制的图形或是 3D 模型可以如同依附在现实物体上一般展现在屏幕上。

一种是基于地理位置信息的AR:利用GPS、指南针、陀螺仪和加速度计来实现。

在移动端,各个平台都有自己的一套AR实现API,android使用ARCore,IOS使用ARKit。这增加了我们工作量和开发成本。因此Unity利用其跨平台的优势,开发了一个与平台无关的AR开发工具包ARFoundation,将 ARCore XR Plugin 、ARKit XR Plugin、Magic Leap XR Plugin、Windows XR Plugin  等AR开发工具包,进行了二次封装,统一API。Unity将这个AR开发工具包命名为“ARFoundation”。

ARFoundation降低了开发成本。

 

三、AR Foundation的架构

    unity搭建了一个开放型的架构体系的平台-Subsystems。Subsystems是一系列功能的逻辑分组,一个Subsystems就可以当做是一个AR Foundation功能部分的C#代码。每个Subsystems之间是互相独立的。

 

 

 

四、ARFoundation支持的功能

设备跟踪:跟踪设备在物理空间中的位置和方向。

平面检测:检测水平和垂直表面。

点云:世界坐标空间中的点的集合。

锚点:设备跟踪的任意位置和方向。

光线估算:估算物理空间中的平均色温和亮度。

环境探针:一种用于生成表示物理环境特定区域的立方体贴图的方法。

人脸跟踪:检测和跟踪人脸。

2D图像跟踪:检测和跟踪2D图像。

3D对象跟踪:检测3D对象。

网格划分:生成与物理空间相对应的三角形网格划分。

身体追踪:在物理空间中识别出的人类的2D和3D表示。

多人协作:在共享的AR体验中跟踪其他设备的位置和方向。

人体分割和遮挡:将距离现实世界中的对象的距离应用于渲染的3D内容,从而实现物理对象与虚拟对象的逼真的融合。

射线广播:查询物理环境中检测到的平面和特征点。

直通视频:优化了将移动摄像机图像渲染到触摸屏上作为AR内容的背景。

会话管理:启用或禁用AR功能时自动对平台级配置进行操作。

遮挡:在真实场景中的位置实现虚拟物体遮挡

五、AR支持的手机设备

 

1. Android:

Android 7.0 或更高版本。

支持的列表:

支持 ARCore 的设备  |  Google Developershttps://developers.google.cn/ar/devices#android_china

其中华为手机均不支持ARCore,需要另外使用华为AR引擎。

2. IOS:

目前支持 A9 处理器以上的手机,也就是iPhone 6s/SE以上的版本的手机或iPad产品。

支持的配置:https://developer.apple.com/documentation/arkit/arconfiguration

六、其他AR平台和技术

国内其他AR技术如SenseAR、EasyAR、太虚AR等。

七、参考文献

1. Unity api:Unity - Manual: Unity User Manual 2021.3 (LTS)

2.ARFoundation示例:

https://github.com/Unity-Technologies/arfoundation-samples

3. ARCore:ARCore 和支持的开发环境概述  |  Google Developers

4. ARKit:ARKit - 简体中文文档 - Apple Developer

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>