混合實境功能範例和應用程式

使用者配戴並手動操作 HoloLens 的圖片

每個開發旅程一開始都會回顧其他開發人員已成功建置的內容 - 混合實境也是如此。 目前,我們所有的教學課程和範例應用程式都是在 Unity 或 Unreal 中建置。 隨著我們開發其他引擎和平台的內容,您會在目錄中的相關標題底下找到它們。

範例應用程式案例研究

開放原始碼範例應用程式是由我們的小組所建立,可協助您先取得Mixed Reality開發的控制碼。 我們已提供專案和完整的原始程式碼作為學習參考。

HoloLens 2開放原始碼範例應用程式

這些範例應用程式是使用適用于 Unity 的Mixed Reality工具組所建立。

HoloLens (第一代) 開放原始碼範例應用程式

功能範例

針對下面所列的每個開發人員案例,有一些功能範例會對應至檔中涵蓋的特定實作,並涵蓋一系列開發平臺和硬體裝置。

案例 功能範例 引擎 描述
建置基本 Unity 混合實境案例 使用 Unity 的 OpenXR 範例 Unity C# 使用最新的 Unity 2020.LTS 和 OpenXR 外掛程式,開始使用跨平臺開發人員工具。
錨定策略 本機錨點 跨應用程式會話和裝置保存和共用空間錨點。 請參閱 空間錨點 一文。
Azure Spatial Anchors 範例 使用 Azure Spatial Anchors的基本功能建置空間感知混合實境應用程式。
QR 代碼 Unity C# 偵測環境中的 QR 代碼。
混合實境中的共同作業 使用者身分識別 Unity C# 使用 Azure Active Directory (AAD) 認證來設定HoloLens 2裝置。
Azure Spatial Anchors 範例 使用 Azure Spatial Anchors的基本功能建置空間感知混合實境應用程式。
空間互動 基本全像投影範例 Windows 10 C++ 在 Windows Mixed Reality 中轉譯旋轉立方體。
場景/物件瞭解 場景瞭解範例 Unity C# 協助設計感知的混合實境應用程式。
Azure 物件錨點範例 Unity C# 使用 3D 模型偵測實體世界中的物件,並使用 Azure 物件錨點估計其 6DoF 姿勢。
關聯式資料重迭 QR 代碼 Unity C# 偵測環境中的 QR 代碼。
海報追蹤器範例 Unity C# 將全像投影與真實世界物件對齊。
建置混合實境數位對應項 Unity C# 了解如何使用 Azure Digital Twins 和 Unity (即時 3D 平台) 來建立混合實境 應用程式。
擷取相機資料 混合實境擷取範例 Windows 10 C++ 擷取混合真實和數位世界做為相片或視訊的第一人體驗。
研究模式範例 Windows 10 C++ 存取 HoloLens 裝置上的主要感應器,以取得研究應用程式。
全像攝影遠端處理 全像攝影遠端播放程式 Windows 10 C++ 使用Wi-Fi連線,即時將全像攝影內容從電腦串流至您的Microsoft HoloLens。
Azure 遠端轉譯範例 Unity C# 使用此處所列範例資料的資源來測試 Azure 遠端轉譯 服務。
工作管理和指引 Dynamics 365 Remote Assist 使用 HoloLens、HoloLens 2、Android 或 iOS 裝置上的 Dynamics 365 Remote Assist,從不同位置共同作業,更有效率地共同作業。
Dynamics 365 Guides 協助操作員在工作流程期間學習,方法是提供全像攝影指示,以在需要時和何處進行。
世界鎖定全像投影 世界鎖定物理範例 Unity C# 探索世界鎖定工具世界鎖定座標系統所啟用的一些虛擬物理體驗。
空間針腳範例 Unity C# 更接近真實世界應用程式的內部運作方式,此應用程式需要將大型物件或物件與真實世界功能對齊。 空間釘選範例提供簡化且更專注的空格針腳功能檢視。
光線針腳範例 Unity C# 示範如何使用 MRTK 能供性手動操作標記物件到位置來設定空間釘選。
使用 Azure Spatial Anchors 世界鎖定工具範例 Unity C# 提供穩定的座標系統,可在會話之間保存,並在應用程式中跨裝置共用。 這可在結合適用于 Unity (WLT) 的 World 鎖定工具與 Azure Spatial Anchors (ASA) 時進行。
管理電源和熱力 管理熱力 & Unity C#、Win32 C++ 當HoloLens 2在暖環境中執行,或具有大量效能需求 (CPU/GPU 使用量、周邊使用量等) 時,PowerThermalNotification SDK 可用來訂閱通知事件,讓裝置運作時間越長。 請參閱 PowerThermalNotification API 參考

建置基本 OpenXR 案例

如果您不熟悉建置基本的混合實境案例,這些範例將協助您開始使用。

針對以 Unity 2020 為目標來建置HoloLens 2或混合實境應用程式的開發人員,可以使用 OpenXR 外掛程式來取代 Windows XR 外掛程式,以取得更好的跨平臺相容性。 Mixed Reality OpenXR 外掛程式也適用于最新版本的 Mixed Reality Toolkit (2.7.x) 。

樣本 參考文章 平台 描述
使用 Unity 範例Mixed Reality OpenXR 使用 OpenXR 外掛程式 Unity C# 這些範例專案示範如何使用 Mixed Reality OpenXR 外掛程式建置適用于HoloLens 2或Mixed Reality頭戴式裝置的 Unity 應用程式。

涵蓋下列範例案例:
OpenXR MRTK Base Unity 專案 請參閱 範例讀我檔案 Unity C# 此存放庫包含使用 Microsoft Mixed Reality Toolkit Foundations 和 Standard Assets 套件和 Microsoft OpenXR 外掛程式套件所設定的 Unity 專案。
使用 Unity 2020.3 和 MRTK 2.7.2 什麼是 MRTK Unity C# MRTK-Unity是 Microsoft 驅動的專案,提供一組元件和功能,可用來加速 Unity 中的跨平臺 MR 應用程式開發。
OpenXR Explorer 請參閱 範例讀我檔案 C++、Windows、Linux、OpenXR OpenXR Explorer 是適用于 OpenXR 開發人員的實用偵錯工具。 它可讓您在 OpenXR 執行時間之間輕鬆切換、顯示執行時間支援的延伸模組清單,以及允許檢查通用屬性和列舉,以及 OpenXR 規格相關部分的直接連結!
適用于開發人員Mixed Reality OpenXR 範例 什麼是 OpenXR C++ 這些 OpenXR 範例使用 C++17 和 Direct3D 11。 相同的原始程式碼適用于在具有Windows Mixed Reality沉浸式頭戴式裝置的 Windows Desktop 上執行的 HoloLens 2 和 Win32 應用程式上執行的 UWP 應用程式。

混合實境中的共同作業

在混合實境中,人們幾乎一起分享體驗並共同作業。 此處所列的範例示範一些可讓這類共同作業運作的功能。

使用者身分識別

此範例會使用 Azure Active Directory (AAD) 認證來設定HoloLens 2裝置,然後將裝置設定為使用鳶尾花登入。

樣本 參考文章
HoloLens 2上的 AAD 登入 Microsoft 身分識別平臺概觀

空間互動 - 基本全像投影範例

此範例會在Windows Mixed Reality上執行,並轉譯旋轉的 Cube。 您可以將 Cube 放在新的位置,並允許各種輸入方法與 Cube 互動。 此範例適用于已連結頭戴式裝置的電腦,以及Microsoft HoloLens。

樣本 參考文章
Windows 通用範例 - 基本全像投影 請參閱 範例讀我檔案

場景理解

場景理解可為Mixed Reality開發人員提供結構化的高階環境標記法。 場景瞭解是專為開發直覺式和直覺感知應用程式而設計,方法是結合現有混合實境執行時間的強大功能。 這些執行時間是高度精確但較不結構化的空間對應,以及新的 AI 驅動執行時間。

樣本 參考文章 平台 描述
Mixed Reality場景瞭解範例 (SU SDK) 場景理解 Unity C# 和 SU SDK 以 Unity 為基礎的範例應用程式,可展示 HoloLens 2 上的 Scene Understanding。
Scene Understanding 範例 (MRTK + SU SDK) 場景瞭解觀察者 (MRTK) Unity C#、MRTK + SU SDK MRTK + 場景瞭解 SDK 範例。

關聯式資料重迭

關聯式資料是背景資訊,可提供對事件、人員或專案更廣泛的瞭解。 透過擴增實境 (AR) ,這項資訊可以顯示並精確對齊實體物件,以提供深入解析、指示、服務記錄和其他重要資料。

QR 代碼

HoloLens 2 可以偵測頭戴式裝置周圍環境中的 QR 代碼,而在每個代碼的真實世界位置建立座標系統。

樣本 參考文章
Unity 中的 QR 代碼追蹤 QR 代碼

海報追蹤器範例

將全像投影對齊真實世界物件,或將多個 HoloLens 裝置對齊一組通用全局座標,讓每個人都會在相同位置看到相同的全像投影,這通常很有説明。 例如,在您的 Unity 場景中,您可以新增「海報」,以將場景錨定 (或許是遊戲台) ,然後在其周圍新增全像投影。 然後您可以列印海報、將其配置在表格上,然後執行校正/對齊工具,這會移動海報的全像攝影版本,使其與海報的實體版本一致。 這會將所有連結的全像投影移至正確的對齊方式。

樣本 參考文章
海報校正範例 請參閱 範例讀我檔案

建置混合實境數位對應項

在此範例中,您將瞭解如何使用 Azure Digital Twins 和 Unity,以即時 3D 平臺建立混合實境HoloLens 2應用程式。

樣本 參考文章
使用 Azure Digital Twins 和 Unity 建置混合實境數位對應項 完整學習路徑

相機擷取

您Mixed Reality裝置擷取的非結構化環境感應器資料會轉換成我們周圍實體世界的強大抽象或全像攝影標記法。

全像攝影混合實境擷取

混合實境擷取 (MRC) 擷取結合真實和數位世界的第一人經驗,作為相片或視訊,並即時分享您與其他人看到的內容。

樣本 參考文章
混合實境擷取範例 混合實境擷取

研究模式

研究模式是在第一代 HoloLens 中引進,可存取裝置上的重要感應器,特別是用於不適合部署的研究應用程式。 下列範例應用程式是用來存取和錄製研究模式資料流程,以及使用 內建和外部的範例。

範例應用程式 參考文章
HoloLens (第一代) 研究模式
HoloLens 2 研究模式

全像攝影遠端處理

全像攝影遠端處理播放程式是一種隨附的應用程式,可連線至支援全像攝影遠端處理的電腦應用程式和遊戲。 全像攝影遠端處理會使用Wi-Fi連線即時將全像攝影內容從電腦串流到您的Microsoft HoloLens,且在 HoloLens (第一代) 和HoloLens 2上受到支援。

樣本 參考文章
全像攝影遠端處理範例 全像攝影遠端概觀