Hololens 2應用開發系列(1)——使用MRTK在Unity中設置混合現實場景并進行程序模擬

Hololens 2應用開發系列(1)——使用MRTK在Unity中進行程序模擬

  • 一、前言
  • 二、創建和設置MR場景
  • 三、MRTK輸入模擬的開啟

一、前言

在前面的文章中,我介紹了Hololens 2開發環境搭建和項目生成部署等相關內容,使我們能生成一個簡單HoloLens2應用程序。而上述程序是一個靜態的程序,要實現Hololen2的交互功能,則需要我們在Unity中導入混合現實場景。
同時,對于我們編寫的程序,要驗證AR交互功能(如手勢動作、眼動追蹤等),如果我們每次新增功能都將其編譯并發布到設備上進行調試,無疑會增加繁重的工作量并浪費大量的時間,因此,微軟官方在MRTK中為我們提供了Unity編輯器內輸入模擬的功能,使我們僅僅通過鍵盤或鼠標便可模擬使用者的手勢操作、眼動追蹤等功能。
下面,我將對以上內容進行介紹。除此之外,您還可以參考微軟官方提供的教程進行補充學習,分別是MRTK2輸入模擬和MRTK3輸入模擬,現在,讓我們開始吧。

二、創建和設置MR場景

首先,要創建和設置MR場景,需在Unity編輯器的菜單欄中,找到Mixed RealityToolkitAdd to Scene and Configure并點擊,編輯器左側(默認)的hierarchy中會出現MixedRealityToolkitMixedRealityPlayspaceMixedRealitySceneContent三個對象,同時點擊或選中MixedRealityToolkit對象后,編輯器右側(默認)的Inspector檢查器中會自動添加MixedRealityToolkit的配置窗口。在這里插入圖片描述
在這里插入圖片描述
MixedRealityToolkit對象右側的配置窗口中,選擇DefaultHoloLens2ConfigurationProfile,以對應到Hololens 2的主配置文件,
在這里插入圖片描述
注意下方彈出的提示,“The Mixed Reality Toolkit’s core SDK profiles can be used to get up an running quickly. You can use the default profiles provided, copy and customize the default profiles, or create your own.”,意思是我們的配置文件還沒有被應用,可以選擇使用默認配置或創建我們自己的配置,在此,可根據項目需求進行選擇,以使用默認配置為例,在此我們點擊Copy & Customize
在這里插入圖片描述
在彈出的窗口中,根據需求修改高級選項,同時可設置配置文件的地址和文件名,然后點擊Clone
在這里插入圖片描述
此時,我們見到下方的設置面板中已不再是灰白,且能夠對相機、輸入系統、空間感知等部分進行設置。但注意,幾乎每一個標簽頁面,都具有Clone this default profile to edit properties below,此時,我們盡量選擇包含Hololens2關鍵字的配置文件,然后點擊上方最右側的Clone按鈕,便可進行后續具體內容的設置。
在這里插入圖片描述
對于這些設置的具體介紹,我們可以參考微軟官方的配置指南,在以后的項目中,我會逐步對其進行使用和介紹。

三、MRTK輸入模擬的開啟

微軟官方在MRTK中為我們提供了Unity編輯器內輸入模擬的功能,使我們僅僅通過鍵盤或鼠標便可模擬使用者的手勢操作、眼動追蹤等功能。該部分功能的設置在MixedRealityToolkit對象右側的配置窗口中,如下圖所示。
在這里插入圖片描述
同時,請注意,微軟官方有如下使用提示:MRTK模擬與Unity提供的的XR全息模擬的功能不兼容。為了使用 MRTK 輸入模擬服務,需要將XR全息模擬的模擬模式設置為“無”。具體做法為在Unity編輯器的菜單欄中,找到Window選項,并選擇XR->Holographic Emulation。在彈出的菜單中,將Emulation Mode屬性設置為None,圖可參考該篇文章,但同時可注意到,上述選項被標注為Deprecated,在新版的Unity中已找不到該選項,默認無需設置即可直接使用MRTK模擬。
在Unity編輯器中點擊播放?按鍵后,可跳轉到Game界面,此時我們可以操縱鼠標鍵盤進行模擬仿真。MRTK輸入模擬為我們提供了如下操作方式,具體參見官方教程。

操作按鍵
移動攝像頭W、A、S、D、Q、E
模擬雙手空格鍵(右手)、左 Shift 鍵(左手)
以將模擬的雙手保持在視野中T 或 Y
旋轉模擬手部按住 Ctrl 鍵并移動鼠標

除此之外,對于手部的顯示及控制,暫時還存在一些問題,如需設置請參考微軟官方提供的詳情網站鏈接1、鏈接2。
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/716943.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/716943.shtml
英文地址,請注明出處:http://en.pswp.cn/news/716943.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Redis 之九:Spring Data Redis -- Redis Template 用法

SpringData Redis Spring Data Redis 是 Spring Data 項目的一部分,它為 Java 應用程序提供了一種便捷的方式來與 Redis 數據庫進行交互。 Spring Data Redis 提供了對 Redis 的抽象封裝,使得開發者能夠以面向對象的方式操作 Redis,并簡化了 …

matlab 寫入格式化文本文件

目錄 一、save函數 二、fprintf函數 matlab 寫入文本文件可以使用save和fprintf函數 save輸出結果: fprintf輸出結果: 1.23, 2.34, 3.45 4.56, 5.67, 6.78 7.89, 8.90, 9.01 可以看出fprintf輸出結果更加人性化,符合要求,下面分別介紹。 一、save函數 …

linux系統Jenkins工具介紹

Jenkins概念介紹 Jenkins概念Jenkins目的特性產品發布流程 Jenkins概念 Jenkins是一個功能強大的應用程序,允許持續集成和持續交付項目,無論用的是什么平臺。這是一個免費的源代碼,可以處理任何類型的構建或持續集成。集成Jenkins可以用于一些…

MQL5-MT5連接上國內期貨

主要原因是昨天在學習MACD時發現給的基礎代碼感覺不對,但無法證明,因為MT5接的都是外匯交易,數據和國內的文華啥的全對不上,便找了一些國內接CTP的,直接寫代碼有點麻煩,雖然之前對接過國內CTP的東西&#x…

AI入門筆記(三)

神經網絡是如何工作的 神經網絡又是如何工作的呢?我們用一個例子來解釋。我們看下面這張圖片,我們要識別出這些圖片都是0并不難,要怎么交給計算機,讓計算機和我們得出同樣的結果?難點就在于模式識別的答案不標準&…

十二、Nacos源碼系列:Nacos配置中心原理(四)- RefreshEvent 事件處理

前面文章,我們說到回調監聽器的方法中,主要就是發布了一個RefreshEvent事件,這個事件主要由 SpringCloud 相關類來處理。今天我們繼續分析后續的流程。 RefreshEvent 事件會由 RefreshEventListener 來處理,該 listener 含有一個 …

Object類方法

toString(): 返回對象的字符串表示形式。默認情況下,返回對象的類名和哈希碼的十六進制表示。 equals(Object obj): 比較兩個對象是否相等。默認情況下,這個方法比較的是兩個對象的引用是否相同,但是通常會在子類中重寫這個方法以實現自定義…

武器大師——操作符詳解(下)

目錄 六、單目操作符 七、逗號表達式 八、下標引用以及函數調用 8.1.下標引用 8.2.函數調用 九、結構體 9.1.結構體 9.1.1結構的聲明 9.1.2結構體的定義和初始化 9.2.結構成員訪問操作符 9.2.1直接訪問 9.2.2間接訪問 十、操作符的屬性 10.1.優先性 10.2.結合性 …

sql基本語法+實驗實踐

sql語法 注釋: 單行 --注釋內容# 注釋內容多行 /* 注釋內容 */數據定義語言DDL 查詢所有數據庫 show databases;注意是databases而不是database。 查詢當前數據庫 select database();創建數據庫 create database [if not exists] 數據庫名 [default charset 字符…

備戰藍橋杯Day22 - 計數排序

計數排序問題描述 對列表進行排序,已知列表中的數范圍都在0-100之間。設計時間復雜度為O(n)的算法。 比如列表中有一串數字,2 5 3 1 6 3 2 1 ,需要將他們按照從小到大的次序排列,得到1 1 2 2 3 3 5 6 的結果。那么此時計數排序是…

一:面試流程

面試 項目介紹功能測試接口測試性能測試測試用例 項目介紹 南網智搜是南方電網公司研發的搜索引擎,主要場景Web 端場景有搜索頻道、個人中心、和一些積分活動等,我在里面主要負責功能測試,接口測試,性能測試,壓力測試…

Jetson Xavier NX 開發板Ubuntu18.04 安裝arduino IDE詳細步驟

Jetson 平臺是arch架構,官網上面幾乎都是x86或者arm64的這兩種錯誤版本都存在匹配問題無法使用,不要下載不要下載! uname -a #版本查詢1.正確下載打開方式 https://downloads.arduino.cc/arduino-1.8.19-linuxaarch64.tar.xz選擇自己想要下…

LeetCode #104 二叉樹的最大深度

104. 二叉樹的最大深度 題目 二叉樹的 最大深度 是指從根節點到最遠葉子節點的最長路徑上的節點數。 示例 1: 輸入:root [3,9,20,null,null,15,7] 輸出:3 示例 2: 輸入:root [1,null,2] 輸出:2 分析 …

【Godot4自學手冊】第十九節敵人的血量顯示及掉血特效

這一節,我主要學習敵人的血量顯示、掉血顯示和死亡效果。敵人的血量顯示和主人公的血量顯示有所不同,主要是在敵人頭頂有個紅色的血條,受到攻擊敵人的血條會減少,并且有掉血數量的文字顯示,效果如下: 一、…

《中華人民共和國消防法》(2021年修訂版)解讀

單選題(共7題,每題5分) 1、舉辦大型群眾性活動,承辦人應當依法向()申請安全許可。 正確答案:B、公安機關 2、違反消防安全規定進入生產、儲存易燃易爆危險品場所的,情節嚴重的要處…

基于springboot+vue的醫院后臺管理系統

博主主頁:貓頭鷹源碼 博主簡介:Java領域優質創作者、CSDN博客專家、阿里云專家博主、公司架構師、全網粉絲5萬、專注Java技術領域和畢業設計項目實戰,歡迎高校老師\講師\同行交流合作 ?主要內容:畢業設計(Javaweb項目|小程序|Pyt…

胎神游戲集第一期

目錄 一、變色小跳龍 二、超級按鈕 三、超級迷宮 四 、城市守衛戰 五、 憤怒的小胎 既然是胎神游戲集,那當然要先感謝我們的胎神大大了 胎神洛谷名:TSzza 好了,言歸正傳,知道你們不喜歡啰嗦,直接上代碼 一、…

SMBGhost漏洞技術分析與防御方案

事件分析 最近國內外各安全廠商都發布了SMBGhost(CVE-2020-0796)漏洞的預警報告和分析報告,筆者利用周末休息時間也研究了一下,就算是做一個筆記了,分享給大家一起學習下,目前外面研究的POC大部分是通過SMB壓縮數據包長度整數溢出…

【openGL4.x手冊04】基元

一、說明 OpenGL 中的術語“基元”用于指代兩個相似但獨立的概念。 “原語”的第一個含義是指 OpenGL 使用的解釋方案來確定渲染時頂點流所代表的內容,例如“GL_POINTS”。這樣的頂點序列可以是任意長的。 “原語”的另一個含義,也稱為“基本原語”&…

如何根據玩家數量和游戲需求選擇最合適的服務器配置?

根據玩家數量和游戲需求選擇最合適的服務器配置,首先需要考慮游戲的類型、玩家數量、預計的在線時間以及對內存和CPU性能的需求綜合考慮。對于大型多人在線游戲,如MMORPG或MOBA等,由于需要更多的CPU核心數來支持更復雜的游戲邏輯和處理大量數…