Unity hololens2开发(一):准备工作与项目部署
准备工作
unity版本要求
可以选择尽量高的版本
VisualStudio 安装及C#环境配置
如果已下载过VisualStudio,在菜单里搜索Visual Studio Installer即可再次下载
- 下载:下载地址
- 安装过程中,在
工作负载界面勾选使用C++的桌面开发、使用Unity的游戏开发(勾选"Visual Studio Tools for Unity"和"C#和VisualBasic")和`通用Windows平台开发,在右边的可选框勾选USB设备连接性和C++(v142)通用Windows平台工具;在单个组件搜索Windows SDK,下载所有版本的sdk - 打开unity,新建一个项目
- 安装插件
Visual Studio Editor:WindowsPackage Manager- 将
+号旁边的In Project改为Unity Registry,然后在左边下拉菜单中找到Visual Studio Editor,点击Install安装
- 设置外部工具:
- 点击菜单栏
Edit→Preferences… - 打开
Preferences偏好设置界面,将External Tools中外部脚本编辑器External Script Editor设置为visual studio 2022(改成自己使用的版本) - 后点击下方
重新生成项目文件
Regenerate project files按钮,会重新生成解决方案文件跟项目文件
- 点击菜单栏
MRFT下载
该方法目前只适用于Windows系统
- 简介:微软公司推出的用来导入
MRTK工具包的快捷化方式,其最大好处是可以直观地看到所有MR应用开发所需要的工具包集合,并且可以选择加载指定版本 - 下载:下载地址
Hololens Remoting Player 下载
在Hololens2的Microsoft Store搜索并下载应用
unity项目创建及配置
新建unity项目
如果项目创建不了,可以尝试更改项目名称
核心选择3D
导入MRTK包
- 打开之前下载好的
MRFT工具,等待工具加载完成后,点击Start - 点击
Project Path的三个点,选择需要导入MRTK工具的unity项目路径(即在你电脑中存储的位置),点击Discover Features - 点击
Mixed Reality Toolkit的“+”号,选择Mixed Reality Toolkit Extensions、Mixed Reality Toolkit Foundation、Mixed Realty Toolkit Standard Assets、Mixed Reality Toolkit Tools
Mixed Realty Toolkit Tools一定要勾选,否则在unity项目中上方Mixed Realty—Toolkit没有Toolbox选项
- 点击
Platform Support的“+”号,选择Mixed Realty OpenXR Plugin,然后点击Get Features - 点击
Validate,在弹窗弹出No validation issues were ditected.后,点击Import - 点击
Approve,确认引入 - 切回unity项目界面,如果在引入完后弹出
MRTK Project Configurator,并且上方出现Mixed Realty按钮,则项目导入MRTK包成功
如果切回unity项目后要求重启项目,按照要求重启即可,正常现象
项目配置
基础配置
- 点击
File—New Scene—Basic(Built-in)—Create,然后保存场景(右键新创建的场景,选择Save Scene,保存到项目的文件夹下,可新建一个用来存储场景的文件夹) - 点击
File—Build Settings- 在
Scenes in Build右下方点击Add Open Scenes,选择新建的场景,并进行勾选 - 点击左下方
Player Settings...,点击左方的XR Plug-in Management- 点击
Universal Windos Platfoem settings,即Windows图标,勾选Initialize XR on Startup,这里会进行下载,下载完成后,勾选Plug-in Providers—Open XR—Microsoft Hololens feature group - 点击左方
XR Plug-in Management目录下的Project Validation,点击Fix All,重复点击直到没有错误为止(有黄色的提示不算错误) - 点击左方
XR Plug-in Management目录下的OpenXR,勾选OpenXR Feature Groups下的Microsoft Hololens,并在右方勾选Hand Interaction Poses、Hand Tracking、Motion Controller Model - 关闭
Project Settings
- 点击
- 在左方的
Platform中选择Universal Windows Platform,设置Architecture为ARM 64-bitBuild Type为D3D ProjectVisual Studio Version为Latest installedBuild and Run on为Local Machine- 点击
Switch Platform
- 在
- 让项目在Hololens2中以
3D形式呈现- 点击上方
Window—TextMeshPro—Import TMP Essential Resources
- 点击上方
MRTK配置
- 引入MRTK工具:点击上方
Mixed Reality—Toolkit—Utilities—Configure Project dor MRTK
该操作会自动替换项目原有的Camera为MixedRealtyPlayspace
请不要随意更改MixedRealtyPlayspace的位置,否则会出现Play模式下的位置与导入到Hololens2中的初始位置不符的情况
- 设置
MixedRealityToolkit- 点击
Hierachy中的MixedRealtytoolkit,然后在Inspector即可进行更改 - 在
View Asset左方的下拉选项选择DefautMixedRealtyToolkitConfigurationProfile,然后点击Copy & Customize,并在弹出的Clone Profile弹窗中更改Profile Name,然后点击Clone(以后统称这一步为Clone) - 点击
Input,ClonePointers可更改射线长度和颜色Articulated,Clone(设置手部的现实方式)
- 点击
Spatial Awareness,取消勾选Enable Spatial Awareness System- 该操作的目的是取消
空间扫描和生成三角面片
- 该操作的目的是取消
- 点击
Diagnostics,Clone,取消勾选Show Diagnostics- 该操作的目的是关闭数据显示
- 点击
交互例子
ObjectManipulator 和
NearInteractionGrabbable 脚本支持
手部和运动控制器 输入模型的 直接操作 模态。
向对象附加脚本后,用户可以手来移动、缩放或旋转该对象。我们将创建一个立方体,向它们附加必要的脚本,然后四处移动它们。
添加并调整立方体
- 右击场景名,选择
GameObject>3D 对象>立方体。
立方体的默认大小为 1 m,这对我们来说太大了。 我们将它缩小到
- 选择该立方体,然后在
Inspector中将立方体的Tranform/Scale值更改为。
立方体在场景中的默认位置为 。 这意味着立方体与用户的头戴显示设备位于同一位置,用户无法看到立方体,直到他们向后移动。 我们将更改立方体的位置值,使它位于更便于查看的位置。
- 在
Inspector中,将立方体的Tranform/Position值更改为。
向立方体添加脚本
若要使对象在使用跟踪手时可抓取,必须附加三个组件:
- 碰撞体组件(无需在此执行任何操作 - Unity 立方体默认已附加盒型碰撞体)
对象操控器(脚本)组件NearInteractionGrabbable(脚本)组件
- 立方体仍然处于选定状态时,在
Inspector窗口中,单击Add Component按钮,然后搜索并选择Object Manipulator脚本。
ObjectManipulator
脚本能够让对象变得可移动、可缩放和可旋转,这些操作可通过一只或两只手来实现。
添加 Object Manipulator 脚本时,系统会自动添加
Constraint Manager 脚本,因为前者依赖于后者。
- 重复相同的步骤,向立方体添加
NearInteractionGrabbable脚本。
通过 NearInteractionGrabbable
脚本,用户能使用模拟手来触碰和抓取附近的对象。
项目部署
- unity中点击上方
File—Build Settings,点击右下方Build,选择build出的文件存放位置后build - build完成后,点击对应的
.sln文件(此时应进入Visual Studio 界面) - 更改
Debug为Release,更改X64为Arm64,并选择远程计算机(Debug,Release,Master三者应该都行,只不过我个人更喜欢设置为Release) - 点击
项目—属性,点击左边配置属性—调试- 打开Hololens2,并打开之前下载好的
Hololens Remoting Player,查看橙色数字(例如:172.18.6.170),并将其输入到计算机名对应的属性框中 - 设置
部署Visual C++ 调试运行库为是
- 打开Hololens2,并打开之前下载好的
远程部署
请确认你的Hololens2与电脑连接的是同一Wi-Fi;如果不是,请调整网络连接并重新输入计算机名
- 局限性:只适用于较小(<500MB)的项目
- 部署并直接打开:直接点击
远程计算机 - 只部署,不自动打开:点击上方
生成—部署解决方案
- 部署并直接打开:直接点击
本地部署
将你的Hololens2设备连接到你的计算机上
请确认你的Hololens2与电脑连接时一直保持开机状态,否则会很容易部署失败
- 将
远程计算机该死设备,并直接点击
如果一次部署失败,请重新点击设备进行部署

