Unity中Vuforia引擎入门

目录

Unity中的Vuforia引擎

Unity Editor是一个流行且有用的创作平台,用于为手持设备和数字眼镜创建尖端的增强现实体验。访问网址:https://unity.com下载并设置Unity。将Vuforia引擎扩展添加到您的项目中,或从我们的岩芯样品在Unity资产商店。

注释:如果您的项目目标是Android API级别31或更高,我们建议更新到Vuforia Engine 10.8或更高版本。更新将自动添加清单权限,以允许使用VISLAM从Android设备上的传感器检索数据。或者,您可以手动添加权限android权限。高采样率传感器在Unity的清单文件中。

关于Vuforia Engine

Vuforia Engine是一个用于创建增强现实应用程序的软件开发工具包(SDK)。使用SDK,您可以将高级计算机视觉功能添加到应用程序中,使其能够通过直观的选项识别图像、对象和空间,从而配置应用程序以与现实世界交互。 

Vuforia Engine支持针对Android、iOS、Magic Leap和UWP设备的AR应用程序开发。请参见:Vuforia引擎支持的版本

本入门指南将向您展示以下内容:

  • 如何将Vuforia引擎添加到Unity项目中。
  • 如何在Unity中设置Vuforia Engine的图像目标。 
  • 如何添加内容和测试AR应用程序。

将Vuforia引擎添加到Unity项目

创建一个空的Unity项目或打开一个现有Unity项目。

  1. 在Unity Hub中,创建一个新项目并选择Vuforia Engine当前支持的Unity版本.
  2. 选择3D或3D(URP)核心模板,并输入Unity项目的名称。

    注意:URP中仅支持Vuforia引擎扩展。Vuforia Core Samples和Vuforia VFX Library与URP不兼容,因为它们包含不受支持的资产。
  3. 创建项目打开空的Unity Project。

添加Vuforia引擎扩展

Vuforia引擎扩展是一个可以导入到Unity项目中的Unity资产包。

  1. 从开发人员门户下载带有安装程序脚本的扩展:Unity的Vuforia引擎扩展。或者,选择中记录的替代导入方法之一Unity的Vuforia引擎包托管.
  2. 从菜单导入下载的Unity Asset Package资产->导入包->自定义包。。。
    导入该包将允许脚本在Unity项目中进行必要的更改,以安装或升级到最新的Vuforia Engine SDK。在中的包管理器中查看项目中当前的版本窗口选项卡。

要手动检查是否有可用的新更新,请转到帮助->Vuforia引擎->检查更新:

Vuforia引擎设置

Vuforia引擎在游戏对象菜单导入后。

缺少的菜单可能表示需要导入Vuforia引擎。

跟踪和渲染增强内容的每个场景都需要一个ARCamera游戏对象.它支持手持设备和数字眼镜的应用程序。

步骤:

  1. 添加一个ARCamera游戏对象从Vuforia引擎菜单。 
  2. 选择ARCamera并打开Vuforia配置(CMD+Shift+V或Ctrl+Shift+V)。
  3. 在中添加Vuforia Developer许可证密钥应用程序许可证密钥字段。 添加许可证在浏览器窗口中打开License Manager。有关获取许可证密钥的指南,请参阅引擎开发人员门户许可证.
    注意:虽然已采取措施安全地存储许可证密钥,但我们建议使用其他加密解决方案来进一步增强密钥的安全性。

提示:添加ARCamera后,可以删除默认的主摄像头。ARCamera还包含一个Camera组件。除非您使用主摄像头渲染特定的摄像头覆盖,否则主摄像头是不必要的,例如用户界面或迷你地图。

添加Vuforia引擎功能

在Unity中激活Vuforia引擎后,可以从VuforiaEngine菜单向Unity中的项目添加功能游戏对象菜单

请参阅功能概述有关Vuforia引擎提供的所有功能的更多信息。

您还可以添加Unity资产商店的Vuforia核心样本。核心示例包括并演示了许多Vuforia引擎功能。以下步骤继续设置一个简单的Vuforia AR场景。

步骤:

  1. 导航到Vuforia引擎菜单并选择图像目标。或您希望使用的任何其他目标。上面链接的功能概述提供了使用其他目标的指南。

    每个Vuforia引擎游戏对象在Inspector中配置。添加目标后,它将显示在等级制度

  2. 选择图像目标游戏对象来自等级制度并从中选择类型下拉列表
    1. 来自图像–请参阅即时图像目标以进行进一步的步骤。
    2. 从数据库–可以在目标经理.
    3. 云记录–云数据库也在目标管理器中配置。请参见云识别了解更多信息。
  3. 在这个例子中,我们选择从数据库

    如果项目中没有包含Image Targets的数据库,Vuforia Engine将询问您是否愿意导入默认图像目标数据库在弹出窗口中。

  4. 点击导入
  5. 在大多数Vuforia目标上,可以设置优化跟踪改进特定用例跟踪的模式。选择以下选项默认AR控制器。模型目标有一个附加模式:低特征对象。请参阅优化模型目标跟踪有关模式的信息。

提示:始终保持Vuforia目标和物理打印或对象之间的精确比例。使用与真实物体大小不同的目标可能会影响跟踪质量。请参见统一虚拟场景比例了解更多信息。

所有Vuforia目标包括:

  • Vuforia<target type>Behaviour组件允许您从数据库中选择目标并配置目标的属性。
  • 一个<target>ObserverEventHandler,用于根据其Status和StatusInfo返回的跟踪信息分配事件和呈现条件。
  • 目标预览,用于控制在编写期间目标预览是否应在场景中可见。

在许多Vuforia目标上,您可以添加遮挡对象添加目标表示。它们被创建为目标的子级。

  • 这个遮挡对象使用遮挡材质添加模型的游戏对象,该遮挡材质允许对象在视觉上阻挡数字内容。
  • 这个目标表示法使用目标的原始材质和网格添加模型的游戏对象。它有助于应用着色器和碰撞器或高亮显示跟踪对象的部分。
  • 注意: 虚拟场景比例将不会重新缩放遮挡对象或目标表示。将值应用于虚拟场景比例因子后,再次添加对象。

注意:区域目标是使用预先计算的预览网格创建的。添加遮挡或碰撞器的设置在AreaTargetBehaviour组件中可用。请参见统一区域目标了解详细信息。

升级您的Vuforia目标预览

从Vuforia Engine SDK 10.8及更高版本开始,Vuforia目标预览表示已更改,以改进开发工作流。将项目升级到最新的SDK将在Vuforia Targets上显示一条消息,要求您升级此目标打开升级对话框.

点击升级此目标将目标升级到新的表示设置。请参见添加Vuforia引擎功能看看它看起来怎么样。

重要事项:升级通过删除作为Vuforia目标子级的旧预览来更改Vuforia目标。应更新指向旧预览的指针和引用以使用目标表示法而不是。

单击打开升级对话框更新场景中所有以前的预览或项目中所有场景中所有先前的预览。

添加数字资产

将数字内容作为目标的子项添加到目标中。这样,仅当跟踪目标时,才会显示增强内容。

  1. 通过将内容拖动到目标顶部,将内容添加为目标的子项。 
    • 从中添加简单多维数据集游戏对象->3D对象->立方体或者从Unity的Asset Store或Core Samples放置内容,如上图所示。
  2. 另请参见Vuforia VFX库以获得免费资源和着色器来设计AR应用程序。

打印物理目标

在大多数情况下,Vuforia目标是物理打印或对象。你可以在中找到这些/编辑/Vuforia/ForPrint如果您已导入核心样本,则作为PDF。此处还提供了所有可打印的Vuforia目标:可打印目标PDF.

打印时不缩放。 

播放场景

要查看实际场景,可以在中使用Vuforia引擎播放模式游戏视图,您可以通过单击播放按钮。使用“播放模式”(Play Mode)可以评估场景并快速制作原型,而无需部署到设备。

播放模式在中配置Vuforia配置部分,您可以使用网络摄像头、模拟器模式或录制模式来测试Vuforia目标。请参见Unity中的Vuforia播放模式了解更多信息。

构建和运行应用程序

Vuforia Engine-powered Unity应用程序与Android、iOS和UWP的其他Unity应用一样构建和运行。

在构建设置中在iOS和Android之间切换平台时,请记住Vuforia Engine设置和取消设置通过本机UI渲染自动。

请参阅Unity的教程移动建筑和他们的生成设置文档在所有支持的平台上。

配置数字眼镜项目

Vuforia Engine支持多种光学和视频可视立体渲染显示,包括HoloLens、Magic Leap和Vuzix M400。请参阅数码眼镜文章了解更多信息。

接下来的步骤

基本要素

Unity的Vuforia引擎包托管

Unity中的Vuforia播放模式

在Unity中使用Vuforia引擎

了解更多信息

如何在统一中创建和加载目标

统一虚拟场景比例因子

在Unity中使用ARCore

在Unity中构建大型Vuforia引擎应用程序

AR基金会

如何在同一统一场景中使用Vuforia引擎和AR Foundation