水军大提督 发表于 2022-10-25 22:23:51

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

前言

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

Unity 版本:2022.1.18f1c1
Visual Studio 版本:Visual Studio Community 2022
 
2 开发流程

2.1 新建项目

一切的最初是新建一个 3D 项目,就起名为 MRTK Learn 好了!
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025111528351-1591982287.png
注意:Unity 受到 Windows 最大路径长度的影响,如果文件路径的长度超过 255 个字符,可能会出现无法编译的情况。因此,建议将本项目存储在尽可能靠近驱动器根目录的位置
 
2.2 导入 & 配置资源

在这里,我们需要使用混合现实工具来为 Unity 项目导入所需的包,这里放上工具的下载连接
https://www.microsoft.com/en-us/download/details.aspx?id=102778
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025115503871-596239044.png
注意:需要安装.NET 5.0 运行时才能运行混合显示工具(在 VS 中可以安装)
 
下载完成之后双击打开工具
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025115750703-1136806191.png
 
需要略微等待一段时间,随后点击 Start 以启动工具
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025120044530-1691011282.png
 
选择自己的项目路径(这个地址要找到 Assets 文件夹),随后点击 Discover Feature 进行下一步
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025133857759-2102166443.png
 
需要选择以下工具包,然后点击 Get Features 验证选择
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025134220649-1982193604.png
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025134408176-1461827424.png
 
点击 Validate 以验证所选的包及导入路径是否正确
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025134543658-2008222992.png
 
如果系统返回“未检测到任何问题”,点击“确定”,然后“导入”

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025134833403-423637270.png
 
选择 Approve 将所需的包导入到项目中
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025134939556-344444038.png
 
最后点击 Exit 关闭导入工具

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025135027343-177142141.png

 
2.3 配置 Unity 项目

当所需的包导入 Unity 之后,选择 Yes 重启 Unity,以便为新的输入系统启用后端
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025135728599-75968414.png
 
Unity 重启后会显示 MRTK 项目配置器。如果未显示,可通过导航栏 Mixed Reality > Toolkit > Utilities > Configure Project for MRTK 手动打开配置器

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025135822721-1080604100.png
 
点击,打开 Project Settings
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140301575-1945862863.png
 
选择使用 OpenXR,并为 OpenXR 选项进行设置
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140437471-1655648592.png

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140610666-145916270.png
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140644312-518692876.png
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140703410-1138253399.png
 
设置完成后打开错误提示,点击 Fix All
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140735106-1676370202.png

 
应用 MRTK 的自动设置

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025140933964-512121712.png
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025141009876-875899830.png
 
导入 TextMeshPro 相关的包
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025141044194-452098027.png
 
设置完成后关闭配置器
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025141130111-2114040910.png
 
随后需要进行用户设置,填写自己的组织(公司)名称和产品名称。产品名称就是应用在 HoloLens 菜单中显示的名称(在名称前面添加一个下划线可以让该应用排在所有应用前面,方便开发期间查找)
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025141405656-1998669141.png
 
填写包名
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025141611372-1908629520.png
注意:包名是应用的唯一识别码,重复部署相同包名的应用是会覆盖安装的!!!如果需要保留多个版本,要记得修改包名
 
2.4 创建场景并配置 MRTK

为测试场景添加 MRTK 工具
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025142027545-556979434.png
 
添加完成后如下所示
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025142119750-1621598907.png
 
2.5 使用对象操控程序添加手部交互

新建一个 Cube 并调整位置和大小,并为 Cube 添加所需的脚本
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025142516481-772736586.png  https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025163442153-633803395.png

[*]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 进行测试

https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025143549335-1945254100.gif
 
在 Unity 编辑器内的输入模拟方法如下:

[*]更改场景中的视图

[*]若要水平移动相机,按 W/A/S/D 键
[*]若要垂直移动相机,按 Q/E 键
[*]若要旋转相机,按住鼠标右键拖动

[*]模拟手的输入

[*]若要模拟右手,按住空格键;松开则移除该手
[*]若要模拟左手,按住左 Shift 键;松开则移除该手
[*]若要在场景中移动手,只需移动鼠标
[*]若要模拟抓取,单击鼠标左键
[*]若要旋转手,按住空格键 + CTRL 键(右手)或按住左 Shift + CTRL 键(左手),然后移动鼠标

[*]固定某只手

[*]若要保持某只手持续出现(即在编辑器中模拟双手交互的情况),按下 T(左手)或 Y(右手)即可,再次按键则移除该手



 
2.7 生成 Unity 项目

打开 Build Settings,将示例场景添加到 Scene In Build 中,更换发布平台为 UWP 并调整对应的参数设置
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025115206318-578870315.png
 
修改 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 生成项目即可
 
等待项目生成
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025144124222-1696535718.png
 
生成完毕
https://img2022.cnblogs.com/blog/2975590/202210/2975590-20221025144347233-796343607.png
 
3 参考资料

MRTK2-Unity 开发人员文档 - MRTK 2 | Microsoft Learn
混合现实工具包简介 - 设置项目并使用手势交互 - Training | Microsoft Learn





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 【MRTK】HoloLens开发基础项目设置