Unity教程 | 使用ARKit为iOS开发AR应用
ARKit在今年的WWDC开发者大会上亮相,发布至今已有一段时间,Unity也第一时间添加了对ARKit的支持。本文将详细介绍如何利用Unity与ARKit为iOS设备创建AR应用,且无需编写任何代码。
最终效果
本教程会将虚拟的教堂模型呈现在现实世界中。
准备工作
本教程将使用Unity引擎与Apple ARKit为iPhone或iPad设备制作一款AR应用,可在现实世界中显示虚拟模型,并对模型进行移动、旋转及缩放操作。该教程简单易懂,即使是从未接触过Unity且毫无编程经验的开发者也能轻松上手。
若要为iOS系统开发应用,需要一台搭载Mac OS系统的电脑,以及用于下载资源的Apple开发者账号。此外,还需满足以下硬件与软件要求:
- Unity引擎(需使用Unity 5.6.1p1或更新版本)
- Unity ARKit插件
- Xcode 9测试版
- macOS High Sierra 10.13测试版
- 搭载iOS 11测试版与A9或A10处理器的Apple设备
实现步骤
设置Unity项目
在安装好所有所需软件并准备好硬件设备后,打开Unity编辑器,新建一个3D项目,并为其命名(可随意选择您喜欢的名称)。
导入ARKit插件
将下载的ARKit插件导入Unity工程,有两种导入方式:
- 双击.unitypackage文件打开,点击“Import”按钮完成导入。
- 点击菜单项“Assets > Import Package > Custom Package…”,在文件浏览器中选择下载的插件,然后导入项目。
导入模型到场景
- 在项目窗口中找到“UnityARShadows”场景,双击打开该场景。
- 依次点击菜单项“Windows – Asset Store”访问Unity资源商店,该商店包含大量免费的3D模型资源。在本示例中,选择Church 3D模型文件,下载该资源并导入项目。
设置场景
- 在Unity编辑器中设置“UnityARShadows”场景,删除层级窗口中的RandomCube、HitPlayer、PointCloudExample及PointCloudParticleExample对象。
- 选中项目窗口中“Church3D – Prefabs”文件夹下的“Church”预制件,将其拖拽至场景中,并使其作为“HitCubeParent”的子对象。设置Church对象的坐标、旋转及缩放属性如下:
- Position: X = 0, Y = 0, Z = 0
- Rotation: X = 0, Y = 0, Z = 0
- Scale: X = 1, Y = 1, Z = 1
- 将“UnityARGeneratePlane.cs”脚本绑定到“Church”对象,然后将“HitCubeParent”对象赋给脚本的Plane Prefab字段。
设置相机与场景
将“CameraParent”预制件的坐标、旋转及缩放属性分别设置为:
- Position: X = -5, Y = 2, Z = -3
- Rotation: X = 0, Y = 90, Z = 0
- Scale: X = 1, Y = 1, Z = 1
此时相机正面朝向教堂模型,您可以根据实际效果调整灯光。设置完成后,点击运行测试场景。
构建并发布
- 依次点击菜单项“File – Save Scene”保存前面编辑的场景。
- 进行构建设置,步骤如下:
- 点击“File – Build Settings”打开构建设置,将目标平台切换至iOS。
- 点击“Add Open Scene”将当前打开的场景构建到最终应用中。
- 点击“Player Settings”设置包名(Build Identifier),并在“Camera Usage Description”中加入“camera use”。
- 点击“Build”按钮构建Xcode工程,Unity编辑器会要求指定工程目录与名称。
- 用Xcode打开刚才构建的工程,设置真机开发所需的开发者证书,确保将iPhone或iPad设备连接到电脑,然后点击运行按钮将应用安装到真机。
今天的教程就分享到这里。实际上,ARKit还有更强大的功能等待开发者去发现。希望大家在本文基础上继续探索,利用Unity引擎挖掘出ARKit更大的潜力。