Unity+Vuforia+Hololens2 AR开发

接触了一个使用HoloLens在Unity中开发一个AR程序的项目。网上的教程很乱,在这里整合一下官方以及各博客的教程。

本文包括环境的安装和配置,一个demo的实现及在HoloLens2上的部署过程。
本文主要参考了以下教程
微软官方
安装工具
MRTK初学者教程.
Vuforia官方
Getting Started with Vuforia Engine in Unity
Working with the HoloLens Sample in Unity
CSDN博文
HoloLens2三种工程部署方式
HoloLens2 + Vuforia图片识别

工具安装

1.Unity3D
微软官方推荐Unity 2020.3LTS版本(见链接
通过UnityHub安装,注意需要添加下图中的两个模块。
在这里插入图片描述
2.VS2019
下载链接
3.Windows10 SDK
可在VS中自动检测安装。
手动安装链接
4.HoloLens2 仿真器(可选)
下载链接
5.Mixed Reality Feature Tool
下载链接
MR功能工具官方使用文档

项目设置

1.在unity中创建新项目

2.打开File-Build Settings 选择UWP,点击Switch Platform

在这里插入图片描述

3.上图左下角的位置,打开Player Settings,选择XR Plugin Management

在这里插入图片描述
点击安装XR Plugin Management。
本文使用Windows XR插件进行配置。启用Windows Mixed Reality选项。确保启动时初始化XR选项被勾选。
在这里插入图片描述

4.打开MixedRealityFeatureTool程序

在这里插入图片描述
点击Start
在这里插入图片描述
选择项目路径
在这里插入图片描述
点击Discover Features
在这里插入图片描述
根据需要选择要导入工程的MRTK包。点击Get Features。
(2021/7/7 导入2.7.1版本失败,可导入2.7.0版本)
在这里插入图片描述
在这里插入图片描述

5.在Unity完成上一步的导入包操作后,会自动显示MRTK项目配置管理器,也可手动在窗口栏中的Mixed Reality中找到。

首先XR 管线 设置,已经在之前的步骤中选择了Windows XR,非OpenVR,此处点击next
在这里插入图片描述
这里根据需要进行设置。此处按照默认设置。其中Audio spatializer 下拉列表中选择MS HRTF Spatializer。单击应用按钮。

在这里插入图片描述
点击Next
在这里插入图片描述
这里可选择导入TMP 基本资源。(官方教程一开始就导入,MRTK 的 UI 元素需要 TextMeshPro 基本资源。 如果你不打算在项目中使用 MRTK 的 UI 元素,则可以跳过此步骤。)
在这里插入图片描述
可在Package Manager中选择导入examples
在这里插入图片描述

6 Vuforia导入

官网下载用于Unity的unitypackage文件
将其导入工程
在这里插入图片描述
选择Update,(需要安装Git,且下载很慢,网上有直接下载Vuforia package并复制到Packages文件夹下的教程)
在这里插入图片描述
窗口栏GameObject下拉选项中出现Vuforia Engine,说明导入成功。

Vuforia AR 设置

Vuforia License Key获取

登录Vuforia 官网注册账号,选择Develop一项,选择License Manager,点击Get Development Key
在这里插入图片描述
点击Confirm,然后点进去,复制好license key
在这里插入图片描述

创建识别目标

在Targer Manager选项下,点击Add Database即可创建要识别目标的数据库。可创建两种类型的数据库:Device,VuMark。VuMark是一种Vuforia提供的类似二维码的识别数据。详细的信息可参考网上。
在这里插入图片描述
点进去创建好的数据库,现在可添加要识别的目标了。关于目标的选择在网上有很多案例及教程。
以单张图片为例,选好图片,设置Width(设置为1),命名。
其中Width的设置会产生什么效果还不知道。
在这里插入图片描述
上传后,会给出图片评分。会根据不同图片好坏给出不同评分。(B站BV134411s725 有讲)如下图为五星评分。
在这里插入图片描述
点击上图中Download Database,下载图片数据库。

创建场景并配置

1.在Unity中新建场景并保存。

2.添加MRTK

在菜单中,选择“Mixed Reality” >,“Add to Scene and Configure",将 MRTK 添加到当前场景 :
在这里插入图片描述

3. 配置MRTK配置文件

MRTK 配置文件是一个嵌套配置文件树,它们构成了应如何初始化 MRTK 系统和功能的配置信息。 顶级配置文件(即“配置”配置文件)包含每个主要核心系统的嵌套配置文件。 每个嵌套的配置文件都设计为配置其对应系统的行为。官网示例
如上图所示,在Hierarchy中选中MixedRealityToolkit,在右侧的Inspector中显示了其配置文件。默认提供了几种配置文件,保持默认设置不变,点击clone得到可编辑副本。对于其中每一项的配置,若要自定义配置,都需要进行clone操作
在这里插入图片描述

4. 添加Vuforia

在MixedRealityPlayspace下找到主摄像机,向其添加Vuforia Behaviour.cs组件
在这里插入图片描述
打开Vuforia Engine 配置
在这里插入图片描述
复制之前的license key到App License Key中,点击Add License
导入之前下载好的database,Database下会自动出现导入的Database。
在这里插入图片描述

5. 编辑场景

选择GameObject->Vuforia Engine->Image Target
ImageTarget被添加到场景中,在Inspector面板Image Target Behaviour脚本中选择type为from database
,选择要用到的databse及图片目标。场景中出现对应的图片目标。
在这里插入图片描述
在该脚本的高级选项中可设置其width和height
在这里插入图片描述
创建cube,将其设置为Image Target子物体,调整其比例位置。
在这里插入图片描述
此时最基本的使用HoloLens+Vuforia识别图片,并出现物体的demo完成。

工程的Build及部署

bulid前的设置

1 Project Settings中,Windows XR Reality中的Depth Buffer Foramt设置为16位(可以根据需要决定是否将深度格式减小为 16 位,如果减小,可提高项目中的图形性能。 若要了解有关此主题的更多信息,可以参考 MRTK 的性能文档的深度缓冲区共享 (HoloLens) 部分。)

在这里插入图片描述

2 Player选项

1.在Resolution and Presentation中,取消勾选Run In Background(Vuforia 教程Disable Run in Background so that Vuforia pauses when the app is put into the background and can access the camera again when the app is resumed.)
在Default Orientation 中设置为Landscape Left
此项设置为默认横屏。
在这里插入图片描述
2.在Publish Settings中,编辑Package name。在Capabilities中,确保 Internet Client, WebCam, Microphone, and SpatialPerception 被勾选。在Support Device Families下,确保Holographic被选择。

Build设置

目标设备选择为HoloLens
架构选择为ARM64(HoloLens2)
Build and Run此处选择为远程连接
Build配置为release
填写HoloLens2设备的ip,用户名及密码
点击Build
在这里插入图片描述
新建App文件夹,存放Build后的工程文件。

工程部署

打开App文件夹下的VS工程
配置为Release模式,选择ARM64,远程计算机,项目属性中调试一项输入远程计算机ip地址同上。开始调试,等待工程部署(电脑及HoloLens2都需要打开开发者选项)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
部署完毕后,即可在HoloLens眼镜中识别目标图片生成立方体。

  • 11
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: Vuforia是一款用于增强现实(AR)应用开发的软件。Hololens是一款由微软推出的AR眼镜Unity是一种用于多平台游戏和应用程序开发的跨平台游戏引擎。Unity 2020.3 LTS是Unity的一个稳定版本。 在使用Unity 2020.3 LTS时,我们可以利用Vuforia插件和Hololens设备来开发AR应用程序。Unity提供了Vuforia Hololens 1和2的示例项目,这些示例项目提供了一个基础模板,可以帮助开发者更好地理解AR应用程序的开发和实现。 在这些示例项目中,开发者可以学习如何使用Vuforia插件来识别现实世界中的图像和对象,并将其与虚拟对象进行交互和融合。通过使用Hololens设备,开发者可以在现实世界的环境中将虚拟对象投射到真实世界中,实现更加真实的AR体验。 在开发AR应用程序时,开发者应该注意选择合适的技术和工具,例如VuforiaHololens设备,并熟悉其使用。Unity 2020.3 LTS提供了一个稳定的开发环境,方便开发者进行AR应用程序的开发和实现。 ### 回答2: Vuforia Hololens是一款在Hololens平台上运行的增强现实开发工具,其可以增强Hololens用户的体验,使用户可以通过头戴式显示器看到虚拟对象与显示屏的混合视觉场景。同时,Vuforia Hololens还提供了在Unity 2020.3 LTS中的样例项目,该项目可以帮助开发者更快速、更有效地开发Hololens应用程序。 Vuforia HololensHololens平台上提供了强大的AR功能,例如图像识别、目标跟踪、手势识别等。这些功能可以使Hololens应用程序更加互动和富有创意,利用这些功能,设计师可以创造出更多具有体验感和趣味性的虚拟体验。 在Unity 2020.3 LTS中,Vuforia Hololens还提供了样例项目,该项目展示了如何使用Vuforia Hololens进行AR开发开发者可以使用该项目作为模板,快速上手HololensAR开发。该项目提供了详细的文档,包含如何安装和使用Vuforia Hololens、如何在Hololens平台上进行AR开发等。 总之,Vuforia Hololens作为一款强大的Hololens增强现实开发工具,为Hololens应用程序的开发者提供了很多便利。与此同时,Vuforia HololensUnity 2020.3 LTS中提供的样例项目可以使开发者更加高效地进行Hololens应用程序的开发。 ### 回答3: Vuforia 是一个由 PTC 公司开发的增强现实引擎,可以与 Hololens 1 和 2 无缝集成,而 Unity 2020.3 LTS 是 Unity 的一个长期支持版本。在 Unity 中,我们可以使用 Vuforia 引擎来创建增强现实应用程序,可以通过扫描图像或实际物体来在 Hololens 中呈现虚拟对象。该引擎提供了自动识别、跟踪和显示虚拟对象的功能,开发人员可以依靠 Vuforia 引擎将虚拟内容融合到现实世界中。 在使用 Unity 2020.3 LTS 版本开发 Vuforia Hololens 1 和 2 应用程序时,可以使用 Vuforia 官方提供的 Unity 范例。这些范例提供了一些基本的场景和功能,如在 Hololens 上显示虚拟物体、通过手势控制虚拟物体等。开发人员可以使用这些范例作为起点,在其基础上进一步开发自己的应用程序,实现更丰富的功能。 总之,利用 VuforiaUnity 构建 Hololens 1 和 2 应用程序可以为用户提供全新的增强现实体验,这将有助于拓展 Hololens 在教育、培训、医疗等领域的应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值