【MRTK】HoloLens开发基础项目设置

  • 【MRTK】HoloLens开发基础项目设置已关闭评论
  • 100 次浏览
  • A+
所属分类:.NET技术
摘要

好记性不如烂笔头,之前做项目的时候很熟练很顺手就没有写笔记。因为排期问题项目中断几个月之后需要重新拾起来,结果发现自己现在忘记得差不多了,于是还是决定写点东西记录一下。即便是简单的项目设置,忘记的时候也还是很痛苦啊。QAQ


前言

好记性不如烂笔头,之前做项目的时候很熟练很顺手就没有写笔记。因为排期问题项目中断几个月之后需要重新拾起来,结果发现自己现在忘记得差不多了,于是还是决定写点东西记录一下。即便是简单的项目设置,忘记的时候也还是很痛苦啊。QAQ

 

1 版本信息

Unity 版本:2022.1.18f1c1

Visual Studio 版本:Visual Studio Community 2022

 

2 开发流程

2.1 新建项目

一切的最初是新建一个 3D 项目,就起名为 MRTK Learn 好了!

【MRTK】HoloLens开发基础项目设置

注意:Unity 受到 Windows 最大路径长度的影响,如果文件路径的长度超过 255 个字符,可能会出现无法编译的情况。因此,建议将本项目存储在尽可能靠近驱动器根目录的位置

 

2.2 导入 & 配置资源

在这里,我们需要使用混合现实工具来为 Unity 项目导入所需的包,这里放上工具的下载连接

https://www.microsoft.com/en-us/download/details.aspx?id=102778

【MRTK】HoloLens开发基础项目设置

注意:需要安装.NET 5.0 运行时才能运行混合显示工具(在 VS 中可以安装)

 

下载完成之后双击打开工具

【MRTK】HoloLens开发基础项目设置

 

需要略微等待一段时间,随后点击 Start 以启动工具

【MRTK】HoloLens开发基础项目设置

 

选择自己的项目路径(这个地址要找到 Assets 文件夹),随后点击 Discover Feature 进行下一步

【MRTK】HoloLens开发基础项目设置

 

需要选择以下工具包,然后点击 Get Features 验证选择

【MRTK】HoloLens开发基础项目设置

【MRTK】HoloLens开发基础项目设置

 

点击 Validate 以验证所选的包及导入路径是否正确

【MRTK】HoloLens开发基础项目设置

 

如果系统返回“未检测到任何问题”,点击“确定”,然后“导入”

【MRTK】HoloLens开发基础项目设置

 

选择 Approve 将所需的包导入到项目中

【MRTK】HoloLens开发基础项目设置

 

最后点击 Exit 关闭导入工具

【MRTK】HoloLens开发基础项目设置

 

2.3 配置 Unity 项目

当所需的包导入 Unity 之后,选择 Yes 重启 Unity,以便为新的输入系统启用后端

【MRTK】HoloLens开发基础项目设置

 

Unity 重启后会显示 MRTK 项目配置器。如果未显示,可通过导航栏 Mixed Reality > Toolkit > Utilities > Configure Project for MRTK 手动打开配置器

【MRTK】HoloLens开发基础项目设置

 

点击,打开 Project Settings

【MRTK】HoloLens开发基础项目设置

 

选择使用 OpenXR,并为 OpenXR 选项进行设置

【MRTK】HoloLens开发基础项目设置

【MRTK】HoloLens开发基础项目设置

【MRTK】HoloLens开发基础项目设置

【MRTK】HoloLens开发基础项目设置

 

设置完成后打开错误提示,点击 Fix All

【MRTK】HoloLens开发基础项目设置

 

应用 MRTK 的自动设置

【MRTK】HoloLens开发基础项目设置

【MRTK】HoloLens开发基础项目设置

 

导入 TextMeshPro 相关的包

【MRTK】HoloLens开发基础项目设置

 

设置完成后关闭配置器

【MRTK】HoloLens开发基础项目设置

 

随后需要进行用户设置,填写自己的组织(公司)名称和产品名称。产品名称就是应用在 HoloLens 菜单中显示的名称(在名称前面添加一个下划线可以让该应用排在所有应用前面,方便开发期间查找)

【MRTK】HoloLens开发基础项目设置

 

填写包名

【MRTK】HoloLens开发基础项目设置

注意:包名是应用的唯一识别码,重复部署相同包名的应用是会覆盖安装的!!!如果需要保留多个版本,要记得修改包名

 

2.4 创建场景并配置 MRTK

为测试场景添加 MRTK 工具

【MRTK】HoloLens开发基础项目设置

 

添加完成后如下所示

【MRTK】HoloLens开发基础项目设置

 

2.5 使用对象操控程序添加手部交互

新建一个 Cube 并调整位置和大小,并为 Cube 添加所需的脚本

【MRTK】HoloLens开发基础项目设置  【MRTK】HoloLens开发基础项目设置

  • Unity 的单位为 1 米,如果使用默认缩放 (1,1,1),则立方体过大,在这里将立方体的大小调整为 10*10*10 cm
  • 世界原点 (0,0,0) 处为相机位置,就是用户眼睛所在的位置,如果将立方体生成在与眼睛相同的位置上,那么用户带上头显之后必须向后移动才能看到这个立方体
  • 若想要使用手进行交互并抓取物体,则该物体必须具备的条件是:
    • 拥有 Collider 碰撞器组件
    • 拥有 Object Manipulator 脚本(添加此脚本时,系统会自动添加 Constraint Manager 脚本,该脚本是 Object Manipulator 依赖的脚本)
    • 拥有 NearInteractionGrabbable 脚本
  • Object Manipulator 脚本能够让物体变得可移动、缩放、旋转,用户可以通过一只手或两只手来完成这些操作
  • NearInteractionGrabbable 脚本让用户能够直接用手接触全息影像

 

2.6 进行测试

点击 Play 进行测试

【MRTK】HoloLens开发基础项目设置

 

在 Unity 编辑器内的输入模拟方法如下:

  • 更改场景中的视图
    • 若要水平移动相机,按 W/A/S/D 键
    • 若要垂直移动相机,按 Q/E 键
    • 若要旋转相机,按住鼠标右键拖动
  • 模拟手的输入
    • 若要模拟右手,按住空格键;松开则移除该手
    • 若要模拟左手,按住左 Shift 键;松开则移除该手
    • 若要在场景中移动手,只需移动鼠标
    • 若要模拟抓取,单击鼠标左键
    • 若要旋转手,按住空格键 + CTRL 键(右手)或按住左 Shift + CTRL 键(左手),然后移动鼠标
  • 固定某只手
    • 若要保持某只手持续出现(即在编辑器中模拟双手交互的情况),按下 T(左手)或 Y(右手)即可,再次按键则移除该手

 

2.7 生成 Unity 项目

打开 Build Settings,将示例场景添加到 Scene In Build 中,更换发布平台为 UWP 并调整对应的参数设置

【MRTK】HoloLens开发基础项目设置

 

修改 Build Settings 中的设置:

  • 将“Architecture(体系结构)”设置为“ARM 64-bit”
  • 将“Build Type(生成类型)”设置为“D3D Project”
  • 将“Target SDK Version(目标 SDK 版本)”设置为“Lastest Installed(最新安装项)”
  • 将“Minimum Platform Version(最低平台版本)”设置为“10.0.10240.0”
  • 将“Visual Sudio Version(Visual Studio 版本)”设置为“Visual Studio 2022”(安装了哪个版本就用哪个版本,VS2019 也一样的)
  • 将“Build and Run on(生成和运行位置)”设置为“Local Machine(本地计算机)”
  • 将“Build Configuration(生成配置)”设置为“Release(发布)”

点击 Switch Platform 切换平台,随后点击 Build 生成项目即可

 

等待项目生成

【MRTK】HoloLens开发基础项目设置

 

生成完毕

【MRTK】HoloLens开发基础项目设置

 

3 参考资料

MRTK2-Unity 开发人员文档 - MRTK 2 | Microsoft Learn

混合现实工具包简介 - 设置项目并使用手势交互 - Training | Microsoft Learn