ARCore 配置¶
什么情况下需要使用ARCore¶
ARCore提供了在部分Android设备上的运动跟踪能力,请阅读 运动跟踪与EasyAR功能 来了解EasyAR功能与运动跟踪的关系,以及是否需要和什么时候需要使用ARCore。
选择 ARCore SDK¶
根据对ARCore的不同使用方式来更改 ARCore SDK
选项。
AR Foundation Or Optional
: 随EasyAR或AR Foundation
一起分发的ARCore SDK将会被包含在应用中,根据ARCore XR Plugin的设置决定。一般情况下推荐使用这个选项,它会自动处理AR Foundation
的情况。Optional
: ARCore 功能在支持ARCore并安装了Google Play Services for AR的设备上可以使用。Required
: 应用将只能在支持ARCore并安装了Google Play Services for AR的设备上运行。External
: 如果你在使用AR Foundation
或其它ARCore SDK分发,可以使用这个选项。这样随EasyAR一起分发的ARCore SDK将不会使用。你也可以使用这个选项来完全排除ARCore SDK在应用中的使用。

关于 Optional
和 Required
的详细说明及上线Google Play Store应用需要做的其它配置可以参考 Google的说明 。
重要
如果你需要在所有支持ARCore的小米和红米手机上使用ARCore,请使用AR Foundation。由于小米厂商实现有bug,EasyAR的ARCore实现已经禁用部分小米手机,包括米9、米10、红米K20、红米K30、红米K40等系列(这里列出的不全)。在这些手机上,默认配置下将不会使用ARCore,在支持EasyAR云端跟踪的手机上会使用EasyAR运动跟踪。
使用随插件分发的 ARCore SDK¶
在EasyAR Sense Unity Plugin中,ARCore的支持所需的库文件和配置已经在插件包中,但要在手机上运行,仍需在手机上安装 Google Play Services for AR 。
EasyAR的ARCore 封装在使用随EasyAR一起分发的ARCore SDK时,不会要求使用GLES3,这与 AR Foundation
所使用的 ARCore XR Plugin
不同。但是我们没有导出 ARCore
的丰富功能。如果你需要使用ARCore的平面检测等功能,仍旧建议使用 AR Foundation
。
Target Architecture¶
根据Google的政策,在arm64的设备上运行仅有armv7的程序,ARCore不会正常工作。在打包时如果未选择ARM64会弹出警告,

这时需要修改项目配置,使用IL2CPP编译并选择ARM64支持。

如确有需要,你可以选择 Continue and don't warn me again
,或者关闭 Verify 32bit Only AR Core When Build
选项,这将关闭打包时的检查。关闭检查只是在打包时不弹出提示,但运行时在一些设备上将有可能出现异常,包括但不限于崩溃或黑屏等。

使用 AR Foundation的 ARCore SDK¶
如果需要使用 AR Foundation的 ARCore SDK,可以参考 Google的说明 进行配置,这时 ARCore SDK
选项需要选择 AR Foundation Or Optional
或 External
。
使用其它ARCore SDK¶
如果有其它第三方插件或项目内有ARCore SDK的分发,也可以使用这些ARCore SDK。这时 ARCore SDK
选项需要选择 External
,并根据具体插件或项目的要求进行配置。