首页 > 其他分享 >【Unity】HoloLens2 开发日记

【Unity】HoloLens2 开发日记

时间:2024-07-03 14:42:09浏览次数:15  
标签:HoloLens MRTK Microsoft Unity 2022 组件 HoloLens2 日记

2022/1/12

第一天! START !

配置环境


Unity创建项目

我的项目创建在:E:\UnityProject\Secondary\MRTK_JIM
打开MRTK,Project Path选为自己的Unity项目根目录。

之后,有很多个可供安装的功能,我只选了两个基础的,一个是 MRTK工具包基础

一个是OpenXR插件。

题外话:Khronos 联盟为解决 AR 和 VR 标准碎片化问题,联合各大制造商和平台、引擎商等联合制定了 OpenXR 标准,该标准的初始版本于去年夏天发布,今日 OpenXR 标准迎来了自己的 1.0 正式版。AR 和 VR 设备现在都支持该 API。

成功后打开Unity,之后步骤见官方文档,本篇只做一些关键步骤的记录。

( !这条不知道我说的对不对!)此处忘了安装Windows 10 SDK,出现以下情况。

下一步,检查基本配置:

关于以下配置槽(红框部分)相关的基础概念知识可以看 Import and configure resources - Learn | Microsoft Docs

一个小表(PC模拟HoloLens输入的一些基础操作)


2022/1/15

用VS直接进行调试

初次连接,需要 PC 和 HoloLens两者都开启开发者模式,才可以互相识别到(VS里才会检测到HoloLens这个设备,调试的时候才有选项可以选)

开发人员模式

  • 开启了之后,按以下链接里的方法,用Type-C连接头盔和电脑,进行测试:
    将应用程序生成到 HoloLens2
    这个链接往下拉,小标题是将应用程序生成到 HoloLens 2 ,里面就是方法了。
  • 概括:Build之后,打开.sln文件,一个选Release,一个选设备。

  • 然后点调试,选这个:


2022/1/28

布置对象

此次的教程链接:HoloLens2 开发 第二单元教学:在场景中放置月球漫游车

  • GridObjectCollection 组件可以对子物体进行布局
  • 求解器(就是一些封装好的脚本):
  1. DirectionalIndicator :指示方向
  2. TapToPlace :放置物体

UI

此次的教程链接:HoloLens2 开发 第三单元教学 :三位对象交互指南

  • 可按压的实体按钮 : PressableRoundButton 预制体
  • 跟随用户的动态菜单:菜单的预制体在混合现实工具包基础(MRTK Foundation)那个包(从Package进入)里。具体见教程:按钮和动态菜单面板

空间映射

导出到HoloLens后有空间的网格线,我想把它去掉,试试关掉空间映射行不行
不行,因为这样子相当于把空间映射的整个功能关闭了,而我只想关网格)。
文档地址:Unity 中的空间映射


这样应该可以关网格:

  • 试了下关闭网格了,但是好像空间映射也关闭了,感知不到地面了?
2022/2/..

Exercise - Manipulate 3D objects using bounds control - Learn | Microsoft Docs

  • 想操纵一个物体,需要使它有:Collider、ObjectManipulator、NearInteractionGrabble三个组件。

  • 边界控制组件(BoundsControl)

边界控制

2022/3/2
  • 写了开题报告
2022/3/3

凝视(目视)追踪

MRTK的配置文件是 树状 的,每一个结点都保留了一个默认配置,而默认配置文件是不可以修改的,要修改只有先克隆一份,去修改那个新的配置文件。
![最终要勾选Is Eye Tracking Enabled]
(/i/l/?n=24&i=blog/2217860/202407/2217860-20240703143651755-1177285551.webp)

这里是修改用PC模拟输入的配置,默认用摄像机正前方代表眼睛方向

  • 对于需要被注视的物体,需要添加EyeTrackingTarget组件。

语音指令

  • 语音输入的配置,还是在Input之下:

  • 往下拉,有一个添加语音关键词的配置,这四个是我加的。

  • 创建一个空物体,给它加个组件SpeechInputHandler,这里就是用来给上一步添加的关键词绑定行为的

注:

  • 创建一个SpeechInputHandler_Global的物体,是为了有个全局的语音识别(无论对空气中的哪个方向说,都能被听到)
  • 而在某个物体上,挂上SpeechInputHandler脚本,是为了让用户只对这个物体实施语音命令。
  • 怎么样实现两者的不同需求? 回答:在该组件中有一个IsFocusRequired的属性。

标签:HoloLens,MRTK,Microsoft,Unity,2022,组件,HoloLens2,日记
From: https://www.cnblogs.com/JimmyZou/p/18281597

相关文章

  • 【Unity】EventTrigger各事件触发时机解释
    OnSelect():当鼠标按下了一个当前未在选中状态的UI时触发。如果一个UI已经被选中(成为焦点UI),那么再点击这个UI时,则不会再一次触发OnSelect。OnDeselect():在OnSelect()已经执行过之后,又选中了另外一个物体时,原有的物体就会触发OnDeselect(),取消选择。OnUpdateSelect():在......
  • 【日记】在街上跳舞被同事看见了(470 字)
    正文昨晚跳舞,照例在街上表演,被单位里的保洁阿姨撞见了……我以为这就完了,结果她还拍了视频发给做饭阿姨。晚上吃饭无意间聊起才知道有这回事。我竟一时间不知该哭还是该笑…….今天非常非常闲。虽然不是没工作,只是我懒得去做,堆在那里罢了。下午还差点跟主管吵起来(语气......
  • 维克日记 v0.4.2:开发者友好的数字化笔记工具
     维克日记,专为技术开发者和笔记爱好者设计的数字化笔记工具,以其强大的功能和灵活的配置赢得了用户的好评。软件采用Markdown语法,提供实时预览功能,让您的笔记编辑更加高效和直观。维克日记的用户界面简洁而功能齐全,无需复杂的设置,即可开始记录您的思路和创意。它支持表格可视化......
  • Unity写个多用对象池
    1.介绍游戏开发中我们会频繁使用到预制体来优化内存,优化性能,增强游戏表现。当要使用的预制体次数很多,创建销毁很频繁时,为了方便管理、提升性能,我们需要一个对象池。一般使用单例+一个预制体+一个存储类型就能做出一个简单的对象池。但当我们需要对很多种物体进行对象池管理时......
  • 计算机二级python复习日记DAY1
    试卷内容及成绩分布选择和编程题选择:选择题期间只允许鼠标左键操作,全部提交完毕后进入操作题模式,键盘才会自动解锁(注意:选择题只能进入一次,还有一定要保证选择题要有20分以上,总分超过60分才能有证书)10分的公共基础题,内容较为庞杂,只需要在做真题的时候积累一下就行30分的pyt......
  • Unity 导航路线生成,小地图同步映射, 经过以后地图与小地图删除点位(点击小地图控制导航
    效果:(如下图所示)操作方法:搭建小地图UI截取图片创建地面挂载如下代码:usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.UI;[RequireComponent(typeof(MeshFilter),typeof(MeshCollider),typeof(MeshRenderer))]publicclassMap:Mo......
  • 【日记】度过了一个堕落的周末……(184 字)
    正文昨天睡了一天觉,今天看了一天《三体》电视剧。真是堕落到没边了呢(笑。本来想写代码完成年度计划,或者多写几篇文章,但实在不想写,也不想动笔。感觉这个周末什么都没做呢,休息倒是休息好了。今天30号,也不知道灵平安到学校没有。本有一些想写的东西,但懒得动笔......
  • 程序员失业日记1:工作五年,交接半天
    最近发现越来越多的小伙伴被公司裁员,有的是因为公司业绩不景气被裁员,有的是因为压力太大离职。很多公司都在裁人、减员。找工作也比之前难。刚好去年我也被上家裁员了,正好做一个系列的日志,希望能帮到在找工作的你。本文为第一篇失业日记:工作五年,交接只需要半天。上午敲代码,下......
  • 2024.7~8 训练日记
    \(\color{grey}\bigstar\)可以秒杀的题。\(\color{green}\bigstar\)思考一会儿后可以秒的题。\(\color{blue}\bigstar\)需要较长时间思考的题。\(\color{#F1C40F}\bigstar\)看题解、稍加指点就会做的题。\(\color{red}\bigstar\)看题解后需要较长时间消化,甚至现在都没有......
  • 【日记】原来真的有人不适合谈恋爱(1194 字)
    正文21日正是周五,夏至。全年当中,白天时长最长的一天。而恰好那天也是银行扣息的日子。所以很忙,我差点没能走掉。所幸最终还是有惊无险。到斯的家里,是晚上9点钟。比我想得要早。这个周周四,他过生日。但是那天因为上班,所以移到了周末。不是法定节假日,很普通的一个......