当前位置:   article > 正文

Unity+Vuforia+Hololens2 AR开发_unity3d ar眼镜开发

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

本文包括环境的安装和配置,一个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眼镜中识别目标图片生成立方体。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/89268
推荐阅读
相关标签
  

闽ICP备14008679号