Day 11 | UnityAR世界建立 - ARFoundation/ARCore介绍

上一篇文章介绍了Unity AR(Android)的建置环境,本篇文章会简单介绍开发此款手游的主要AR套件的基本功能。Unity在AR领域的发展一直走在前端位置,很早就开始支援不同平台的AR开发,具有数种AR套件,iOS的ARKit、Google的ARCore、Vuforia、Mars等,都是现在开发者常用的AR套件。

目录
AR Foundation 介绍
ARCore 介绍
功能、环境测试

AR Foundation 介绍

以往开发Apple、Android两个平台的AR应用程序时,需要各自开发不同的应用程序,对於开发人员来说需要耗费较大的开发成本。之後Unity推出了AR Foundation,一个跨平台、装置的核心通用API,本身不实现任何AR功能,搭配ARCore、ARKit等套件,开发人员只要用一组程序码,即可建置跨平台的应用程序,大大减少开发时间。

主要元件

  • ARSession:控制整体AR的生命周期,管理AR的开启和关闭。
  • ARSessionOrigin:处理AR世界座标系到Unity坐标系的转换。可搭配许多元件管理各种AR功能,例如:ARPlaneManager处理平面侦测、ARFaceManager处理脸部侦测、ARRaycastManager负责AR世界中的射线碰撞。
  • ARCamera:由ARSessionOrigin管理,控制AR镜头,用户在装置上可看到方位。

ARCore 介绍

由Google开发的AR扩增实境套件,透过使用不同的API,让智慧手机主要具备以下功能:

  • 动态追踪:帮助手机理解虚拟实境与现实映射关系,调整AR虚拟物件的位置。
  • 环境感知:对实际环境中的平面进行评估,估算位置、大小以及方向。
  • 光线感知:分析当前环境的光罩信息,对虚拟内容渲染的光照色彩进行校正,使虚拟内容与现实场景融合的更加自然。

尚且具备如面部识别、环境光感测、场景观测器、增强图像等延伸功能,在这次的开发中提供核心AR功能,以ARFoundation作为使用介面来实现游戏内容。

功能、环境测试

环境设定完成时,需实际建置简单场景来检测设定是否完成。在Sample Scene中
添加ARSesstionOrigin及ARSession两个物件,关闭MainCamera。

在ARSesstionOrigin下添加ARPlaneManager以及ARRaycastManager两个元件,并且创建AR Default Plane的Prefab放入ARPlaneManager的Plane Prefab,就可以输出看看是否设定成功且具备AR侦测平面功能罗。

可以自己试试其他的Manager功能喔,例如ARFaceManager,创建AR Default Face,测试脸部辨识功能。


下一篇文章会正式开始AR游戏实作喔,那我们就明天见罗~


<<:  Day_13 有线网路应用(五)

>>:  【Day25】React Class Component 生命周期简单介绍

day29: functors

今天我们要来了解 javascript FP 中的 functors 概念。 他的概念就是类似 OO...

网页图片-30天学会HTML+CSS,制作精美网站

图片在网页里是不可或缺的元素,可以增加网站的丰富度及美感,但是也可能造成网站花太多时间载入,使用者体...

WhatsApp Business API 功能|绝对不会被block的广播工具?

你的 WhatsApp Business 帐号有试过被 WhatsApp 封锁吗?相信有不少企业都试...

Day15.进入 ARM 世界: ARM Cortex-M Programming

已经常用的一些指令集介绍完毕,接下来就是要如何使用 ARM Cortex-M 进行程序设计。 Cor...

Day-20 堆叠(Stack)

堆叠介绍 堆叠是限制插入元素和删除元素只能在同一个位置的表(list),该位置一般来说称为栈顶(To...