Hololens官方教程精简版 -配置篇

前言

  • 初衷 
    首先,官方教程更新很慢,使用的旧版HoloToolkit(微软提供的工具包)。 
    其次,官方教程提供了对应的源码包,但是体积大得吓人。下个教程对应的源码就需要很长时间。 
    最后,我觉得官方教程太复杂,整个教程实践下来,做了后面就忘了前面。 
    所以有了这个系列,权当做一下学习笔记。

  • 为什么标题里包含“Hololens官方教程”? 
    因为这个系列就是按照官方教程的步骤进行的

  • 为什么叫做“精简版”? 
    因为这个系列不依赖官方教程的源码包及素材,全部使用内置素材和官方提供的工具库。 
    并尽可能的使用工具库进行快速开发。

安装开发工具

需要安装如下工具:

如果有Hololens设备,请在设备上安装:

官方参考网址:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/install_the_tools

注意以下几点

  • 如果没有Hololens设备,那么请保证主板支持Hyper-V,并在系统中打开Hyper-V功能,这样才能安装Hololens模拟器 
    打开Hyper-V
  • 另外,请安装Windows10的专业版、企业版或教育版,并让版本至少为:10586,推荐为14393以上。可以运行dxdiag命令查看当前系统的版本 
    查看系统版本
  • 安装VS2015时,记得勾选通用Windows应用开发工具 
    记得勾选通用Windows应用开发工具
  • Unity需使用5.5及以上版本(包含测试版,截止本文最新版本为:5.5.0.f3)

下载HoloToolkit-Unity

这个是微软官方提供的开发工具包,帮我们封装了很多常用的组件及脚本。 
下载地址:https://github.com/Microsoft/HoloToolkit-Unity 
解压,用Unity打开该项目,并导出: 
导出HoloToolkit-Unity工具库

导出所有HoloToolkit-Unity 
图中HoloToolkit-Example不是必须的,但为了学习需要,建议还是导出

将导出的资源包任意命名,本例中命名为:HoloToolkit-Unity-5.5.0f3.unitypackage

Chapter 1 - 新建Hololens项目

本例中,命名为:TinyHolo

新建Unity 3D项目

导入刚才的HoloToolkit-Unity-5.5.0f3.unitypackage 
导入HoloToolkit

Chapter 2 - 设置摄像机

新建目录:Assets/_Scenes/Holograms 100/

保存当前场景到该目录下,如图: 
新建目录,保存场景

删除默认的Main Camera,将Assets/HoloToolkit/Input/Prefabs/HoloLensCamera拖入到根级 
设置Main Camera

Chapter 3 - 创建全息物体

新建一个Cube,按如下设置: 
Position > (X: 0, Y: 0, Z: 2) 
Rotation > (X: 45, Y: 45, Z: 45) 
Scale > (X: 0.25, Y: 0.25, Z: 0.25)

创建一个Cube

Chapter 4 - 导出到Visual Studio

选择Unity主菜单 > File > Build Settings…

  1. 点击”Add Open Scene”添加当前场景
  2. 点击”Windows Store”,选择发布平台
  3. 点击”Switch Platform”,切换到”Windows Store”
  4. 按图示方式选择发布设置 
    Build Settings
  5. 点击”Player Settings…”进入”Player Settings”设置界面

在”Player Settings”面板中,添加“虚拟现实”的支持,并添加”Windows Holographic”的SDK 
Player Settings

之后,点击菜单Edit > Project Settings > Quality,打开质量设置面板。 
打开质量设置面板

将Windows Store对应的质量等级设置为”Fastest”,如图: 
Quality Settings

Chapter 5 - 编译和发布

重新打开”Build Settings”面板,点击”Build”按钮。在弹出窗口中,新建文件夹”App”,并选择这个文件夹。 
选择发布文件夹

等待一会儿,编译成功后,双击”App/TinyHolo.sln”文件,Visual Studio 2015将会打开该项目。

右键选择”Package.appxmanifest”文件,点击”查看代码”,如图: 
编写manifest文件

将代码:

  <Dependencies>
    <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.14393.0" />
  </Dependencies>
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

替换为:

  <Dependencies>
    <TargetDeviceFamily Name="Windows.Holographic" MinVersion="10.0.10586.0" MaxVersionTested="10.0.14393.0" />
  </Dependencies>
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

如果有设备,请连接好设备,并按下图进行设置并启动程序: 
连接设备进行调试

如果没有设备,而使用模拟器,请按下图进行设置并启动程序: 
使用模拟器进行调试

附加技巧:用Hololens设备直接连接Unity并进行调试

  • 要有一台Hololens
  • Hololens上要安装Holographics Remoting Player软件(见文章最顶部)

启动Holographics Remoting Player,会出现该台设备的IP地址: 
启动HRP

打开Unity项目,菜单 > Window > Holographic Emulation,如图: 
打开Hololens远程调试器 
Mac版本的Unity暂不支持

会出现远程连接面板,按下图进行设置,IP请替换为上一步得到的IP,如图: 
远程连接面板

点击”connect”按钮后,再点击Unity的”Play”按钮。


第五章 - 编译和部署全息应用程序

现在我们唯一剩下的工作就是从Visual Studio中编译然后部署我们的第一个全息应用程序了。首先,在Visual Studio顶部的编译选项工具栏里,将目标从Debug改为Release ,平台从ARM改为X86. 接下来的步骤,需要取决于你是在模拟器中或者Hololens真机上进行部署,具体请参阅如下

 

 通过Wi-Fi将应用部署到Hololens真机

  1. 在Visual Studio的编译选项栏里,将设备这一下拉框中选择 Remote Machine
  2. 在弹出的对话框中输入 Hololens的IP地址 (Hololens 和你的笔记本需要加入同一个Wi-Fi网络),然后更改Authentication Mode 为 Universal(未加密协议)
  3. 选择Visual Studio 的菜单目录 Debug > Start without debugging. 如果这是你第一次从你手上的笔记本部署应用到Hololens中,你需要先将你的Hololens和你的笔记本做一次配对,具体操作参阅 pair it with Visual Studio

 通过USB将应用部署到Hololens真机

  1. 在Visual Studio的编译选项栏里,将设备这一下拉框中选择 Device

  2. 选择Visual Studio 的菜单目录 Debug > Start without debugging.

 通过USB将应用部署到Hololens模拟器

  1. 在Visual Studio的编译选项栏里,将设备这一下拉框中选择 HoloLens Emulator
  2. 选择Visual Studio 的菜单目录 Debug > Start without debugging.

 

当你成功的将第一个全息应用部署完成后,你将会看到一个方块悬停在你的面前,你可以走进它或者围绕着它细节观察和体验. Good Luck!

 


参考文档: 
安装工具:https://developer.microsoft.com/en-us/windows/holographic/install_the_tools 
官方教程Holograms 100:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/holograms_100

学习笔记主要讲解 HoloLens 2 开发入门教程中的 MRTK(Mixed Reality Toolkit)的 EyeTracking 和语音识别功能。 ## EyeTracking HoloLens 2 中的 EyeTracking 功能可以让应用程序能够检测用户的注视点,并根据注视点来响应相应的操作。MRTK 提供了一些组件来支持 EyeTracking 功能。 ### GazeProvider GazeProvider 是一个 MRTK 组件,它可以检测用户的注视点,并在场景中放置一个 Gaze Cursor(注视光标)来指示用户的注视点。要使用 GazeProvider,需要将它添加到场景中的一个物体上。 ### EyeTrackingTarget EyeTrackingTarget 是一个 MRTK 组件,它可以将一个物体标记为 EyeTracking 的目标。当用户的注视点在该物体上时,可以触发相应的操作。要使用 EyeTrackingTarget,需要将它添加到场景中的一个物体上,并设置它的 Trigger Type(触发类型)和 Action(操作)。 ### 示例 以下代码演示了如何在 HoloLens 2 上使用 EyeTracking 功能: ```csharp using UnityEngine; using UnityEngine.XR.WSA.Input; using Microsoft.MixedReality.Toolkit.Input; public class EyeTrackingExample : MonoBehaviour { private GazeProvider gazeProvider; private GameObject targetObject; void Start() { gazeProvider = FindObjectOfType<GazeProvider>(); targetObject = GameObject.Find("TargetObject"); } void Update() { if (gazeProvider.GazeTarget != null && gazeProvider.GazeTarget == targetObject) { Debug.Log("Gaze detected on target object."); } } } ``` ## 语音识别 HoloLens 2 中的语音识别功能可以让应用程序能够识别用户的语音指令,并根据指令来响应相应的操作。MRTK 提供了一些组件来支持语音识别功能。 ### SpeechInputHandler SpeechInputHandler 是一个 MRTK 组件,它可以将一个物体标记为语音输入的目标。当用户说出相应的语音指令时,可以触发相应的操作。要使用 SpeechInputHandler,需要将它添加到场景中的一个物体上,并设置它的 Keywords(关键词)和 Actions(操作)。 ### 示例 以下代码演示了如何在 HoloLens 2 上使用语音识别功能: ```csharp using UnityEngine; using Microsoft.MixedReality.Toolkit.Input; public class SpeechInputExample : MonoBehaviour, IMixedRealitySpeechHandler { public void OnSpeechKeywordRecognized(SpeechEventData eventData) { if (eventData.Command.Keyword == "Hello") { Debug.Log("Hello command recognized."); } } } ``` 需要注意的是,在使用语音识别功能之前,需要先在 MRTK 的配置文件中启用语音识别功能,并添加相应的语音指令。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值