Unity 2019导入ARCore Unity SDK解决方案
一、问题背景
最近学习ARCore,即自定义创建一款Android端的AR应用。于是便学习ARCore官方网站的开发教程,先导入并运行arcore-unity-sdk-1.16.0.unitypackage,但是在Unity 2019导入arcore-unity-sdk-1.16.0.unitypackage后总是提示编译错误。
二、错误原因分析
参考ARCore官方网站的开发教程时,浏览器根据博主我所在的国家默认选择了ARCore的中文开发教程,这似乎不是什么大问题。但是,如果我们仔细对比ARCore的英文和中文开发教程,我们会发现中文开发教程存在着严重的滞后性!
由上述的ARCore中英文开发教程的对比图,我们可以得知:中文教程已经很久没有更新了,而只有英文教程提到了以下针对在Unity 2019导入ARCore Unity Sdk时需要的额外安装包:
Unity 2019 only: Select Window > Package Manager and install the following packages:
Multiplayer HLAPI (required by the CloudAnchors sample)
XR Legacy Input Helpers (required by Instant Preview, which uses the TrackedPoseDriver)
三、解决方案
我们需要按照ARCore最新的英文版开发教程来完成我们ARCore Unity Sdk的导入操作,以下是最新的英文版教程。
1.创建一个新项目并导入SDK
打开Unity并创建一个新的3D项目。
仅适用于Unity 2019:选择Window >Package Manager并安装以下包:
Multiplayer HLAPI(CloudAnchors sample需要该安装包)
XR Legacy Input Helpers (使用TrackedPoseDriver的Instant Preview需要该安装包)
导入ARCore Unity Sdk:
选择 Assets > Import Package > Custom Package。
选择你下载的arcore-unity-sdk-1.16.0.unitypackage。
在Importing Package导入包对话框中,确保选中所有包选项并单击Import。
2.打开示例场景
在Unity的Project项目窗口,你可以在这找到HelloAR的Demo样例:Assets/GoogleARCore/Examples/HelloAR/Scenes/。
3.配置项目设置
前往File > Build Settings打开Build Settings窗口。
选择Android并点击Switch Platform。
在Build Settings窗口中点击Player Settings。
在Settings窗口, 按照如下要求进行配置:
4.构建并运行示例应用程序
- 在设备上启用开发人员选项和USB调试。
- 将设备连接到电脑。
- 需要Android SDK 26以上否则Build时会报错,可根据下方链接下载后解压直接放到build-tools目录文件夹下便可使用。
- 在Unity的Build Settings窗口中,点击Build并运行。Unity将您的项目构建到Android APK中,安装到您的设备上,并启动它。
- 移动你的设备,直到ARCore开始检测和可视化平面。
- 点击一个平面,将一个Andy Android对象放在上面。