【Unity】HoloLens2 開發日記

JimmyZou發表於2024-07-03
2022/1/12

第一天! START !

配置環境

  • 微軟官方教程:練習 - 匯入和配置資源 - Learn | Microsoft Docs

  • Windows 10 SDK 地址:Windows SDK - Windows 應用開發 (microsoft.com)

  • MRTK(混合現實工具包):Download Mixed Reality Feature Tool from Official Microsoft Download Center

  • 安裝以上的MRTK之前,需要先安裝.NET 5.0,地址:Download .NET 5.0 Runtime (microsoft.com)
    幾個Download的按鈕都試了,都仍然打不開MRTK,最後選了第一個Download x64,開啟了...


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這個裝置,除錯的時候才有選項可以選)

  • 網址在這:使用 Visual Studio 進行部署和除錯 - Mixed Reality | Microsoft Docs

  • 網址上的內容,最重要是下面圖片上的這個內容:

開發人員模式

  • 開啟了之後,按以下連結裡的方法,用Type-C連線頭盔和電腦,進行測試:
    將應用程式生成到 HoloLens2
    這個連結往下拉,小標題是將應用程式生成到 HoloLens 2 ,裡面就是方法了。
  • 概括:Build之後,開啟.sln檔案,一個選Release,一個選裝置。

  • 然後點除錯,選這個:


2022/1/28
  • 此次所需 Unity Package 的下載連結(點選自動下載):教學包下載連結

佈置物件

此次的教程連結: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

凝視(目視)追蹤

  • 凝視追蹤Exercise - Use eye-tracking - Learn | Microsoft Docs
  • 首先改配置(在MixedRealityToolkit物件的元件裡)

MRTK的配置檔案是 樹狀 的,每一個結點都保留了一個預設配置,而預設配置檔案是不可以修改的,要修改只有先克隆一份,去修改那個新的配置檔案。
![最終要勾選Is Eye Tracking Enabled]
(https://img2024.cnblogs.com/blog/2217860/202407/2217860-20240703143651755-1177285551.webp)

這裡是修改用PC模擬輸入的配置,預設用攝像機正前方代表眼睛方向

  • 對於需要被注視的物體,需要新增EyeTrackingTarget元件。

語音指令

  • 語音輸入的配置,還是在Input之下:

  • 往下拉,有一個新增語音關鍵詞的配置,這四個是我加的。

  • 建立一個空物體,給它加個元件SpeechInputHandler,這裡就是用來給上一步新增的關鍵詞繫結行為的

注:

  • 建立一個SpeechInputHandler_Global的物體,是為了有個全域性的語音識別(無論對空氣中的哪個方向說,都能被聽到)
  • 而在某個物體上,掛上SpeechInputHandler指令碼,是為了讓使用者只對這個物體實施語音命令。
  • 怎麼樣實現兩者的不同需求? 回答:在該元件中有一個IsFocusRequired的屬性。

相關文章