AR Foundation 使用入门

Unity 的 AR Foundation 是一种跨平台框架,允许您编写一次增强现实体验,然后针对 Android 或 iOS 设备进行构建,而无需做出任何其他更改。框架可通过 Unity 的 AR Foundation 软件包获取。

ARCore 的可选 ARCore Extensions for AR Foundation 软件包添加了额外的功能,可让您将云锚点、相机配置过滤器以及录制和播放等功能添加到您的应用中。

迁移或升级现有项目

  • 如需将现有项目从已弃用的 ARCore SDK for Unity 迁移到 Unity 的 AR Foundation 和可选的 ARCore Extensions,请参阅迁移指南
  • 如需从早期版本的 AR Foundation 升级现有项目,请参阅 Unity 的升级和迁移指南

要求

AR Foundation 软件包需要以下项,具体取决于您的目标平台:

Android

硬件

  • 支持 ARCore 的 Android 设备或模拟器
  • 用于将设备连接到开发机器的 USB 线

软件

iOS

硬件

软件

安装 AR Foundation

如需安装 AR Foundation Unity 软件包,请按以下步骤操作。

  1. 打开现有的 Unity 项目,或创建新的 3D 项目。

  2. 进入 Window > Package Manager

  3. 选择 Packages 旁边的 Unity Registry

  4. 在搜索栏中,输入“AR Foundation”。

  5. 点击 Install

安装并启用平台专用插件软件包

AR Foundation 软件包提供了一个可供 Unity 开发者使用的界面,但不会实现任何 AR 功能本身。如需在目标设备上使用 AR 基础,您还需要安装单独的软件包,并为每个平台启用相应的插件。

Android

借助 ARCore XR 插件软件包,您可以为 Android 设备构建增强现实应用。如果您的应用以 Android 设备为目标平台,请按照以下步骤在 Unity 项目中进行安装。使用与 AR Foundation 软件包相同的版本,以避免任何兼容性问题。

  1. 在您的项目中,转到 Window > Package Manager

  2. 选择 Packages 旁边的 Unity Registry

  3. 在搜索栏中,输入“ARCore XR 插件”。

  4. 点击 Install

  5. 转到 Edit > Project Settings。在 XR Plug-in Management 中,打开 Android 标签页并启用 ARCore

iOS

借助 ARKit XR 插件,您可以构建适用于 iOS 设备的增强现实应用。如果您的应用以 iOS 设备为目标平台,请按照以下步骤在 Unity 项目中进行安装。使用与 AR Foundation 软件包相同的版本,以避免任何兼容性问题。

  1. 在您的项目中,转到 Window > Package Manager

  2. 选择 Packages 旁边的 Unity Registry

  3. 在搜索栏中,输入“ARKit XR 插件”。

  4. 点击 Install

  5. 转到 Edit > Project Settings。在 XR Plug-in Management 中,打开 iOS 标签页并启用 ARKit

配置 AR 现场录像并将 AR 基础组件添加到您的场景中

场景需要 AR 会话才能实现 AR 流程,例如运动跟踪、环境理解和光线估算。您需要以下游戏对象才能支持 AR 会话:

  • AR Session:控制 AR 体验的生命周期。

  • AR Session Origin:将 AR 坐标转换为 Unity 世界坐标。

在添加新的游戏对象之前,请删除默认的 Main Camera。它将被 AR Session Origin 中的新 AR Camera 替换。

将新的 AR 游戏对象添加到您的场景中:右键点击 Hierarchy 窗格,然后选择 XR。添加新的 AR Session 和新的 AR Session Origin 游戏对象。

配置播放器设置

Android

  1. 导航到 File > Build Settings 以打开 Build Settings 窗口。
  2. Platform 下,选择 Android 并点击 Switch Platform
  3. 点击 Player Settings
  4. 应用以下更改:

    Player Settings > …
    Other Settings > Rendering 取消选中 Auto Graphics API
    如果 Graphics APIs 列在 Vulkan 下,请将其移除,因为 ARCore 尚不支持 Vulkan。
    Other Settings > Package Name 使用 Java 软件包名称格式创建唯一应用 ID。
    例如,使用 com.example.helloAR
    Other Settings > Minimum API Level 如果您要构建 AR 必备应用,请指定 Android 7.0 'Nougat' (API Level 24) or higher
    如果您要构建 AR 可选应用,请指定 Android API Level 19 or higher
    Other Settings > Scripting Backend 选择 IL2CPP(而非 Mono)以允许在下一步中启用 ARM64 支持。

    开发期间:

    • 使用 Mono + 32 位 (ARMv7)
    • 安装 FAT(32 位 + 64 位)ARCore APK

    配送到 Play 商店时:

    • 使用“IL2CPP
    • 同时启用 32 位 (ARMv7) 和 64 位 (ARM64) 以满足 Play 商店的 64 位要求
    • 可选(2018.3 及更高版本支持):在 Build Settings 中,启用 Android App Bundles
    Other Settings > Target Architectures 如要满足 Google Play 64 位要求,请启用 ARM64(64 位 ARM)。 使 ARMv7(32 位 ARM)保持启用状态以支持 32 位设备。

iOS

  1. 导航到 File > Build Settings 以打开 Build Settings 窗口。
  2. Platform 下,选择 iOS 并点击 Switch Platform
  3. 点击 Player Settings
  4. 进行以下设置:

    Player Settings > …
    Other Settings > Bundle Identifier 请以反向 DNS 格式添加应用的名称。
    例如,使用 com.mycompany.myapp
    Other Settings > Camera usage description 输入一段说明来解释您对 AR 的使用(例如 ARKit)。
    Other Settings > Target minimum iOS version 11.0或以上
    Other Settings > Architecture ARM64

后续步骤