すべての開発体験は、他の開発者が正常に構築した内容を振り返って始まります。Mixed Reality も同じではありません。 現在、すべてのチュートリアルとサンプル アプリは、Unityまたは Unreal に組み込まれています。 他のエンジンやプラットフォームのコンテンツを開発する際は、目次の関連する見出しの下に表示されます。
サンプル アプリケーションのケース スタディ
オープンソースのサンプル アプリは、開発に関するハンドルをすぐに入手できるように、チームMixed Reality作成されました。 プロジェクトと完全なソース コードを学習リファレンスとして提供しました。
オープン ソースのサンプル アプリをHoloLens 2する
これらのサンプル アプリは、Mixed Reality Toolkit for Unityで作成されます。
HoloLens (第 1 世代) オープン ソースサンプル アプリ
機能サンプル
以下に示す開発者シナリオごとに、ドキュメントで説明されている特定の実装に対応する機能サンプルがあり、さまざまな開発プラットフォームとハードウェア デバイスに対応しています。
シナリオ | 機能サンプル | Engine | 説明 |
---|---|---|---|
基本的なUnity Mixed Reality シナリオを構築する | Unity サンプルを含む OpenXR | Unity C# | 最新のUnity 2020.LTS と OpenXR プラグインを使用して、クロスプラットフォーム開発者ツールの使用を開始します。 |
アンカー戦略 | ローカル アンカー | アプリケーション セッション間およびデバイス間で空間アンカーを保持および共有します。 空間アンカーに関する記事を参照してください。 | |
QR コード | Unity C# | 環境内の QR コードを検出します。 | |
Mixed Reality でのコラボレーション | ユーザー ID | Unity C# | Azure Active Directory (AAD) 資格情報を使用して、HoloLens 2 デバイスを設定します。 |
空間相互作用 | 基本的なホログラムサンプル | Windows 10 C++ | Windows Mixed Realityで回転するキューブをレンダリングします。 |
シーンの理解 | シーン理解のサンプル | Unity C# | 環境に配慮した Mixed Reality アプリケーションの設計に役立ちます。 |
コンテキスト データ オーバーレイ | QR コード | Unity C# | 環境内の QR コードを検出します。 |
ポスター トラッカーのサンプル | Unity C# | ホログラムを現実世界のオブジェクトに合わせます。 | |
Mixed Reality デジタル ツインを構築する | Unity C# | Azure Digital Twins と Unity (リアルタイム 3D プラットフォーム) を使用して Mixed Reality アプリケーションを作成する方法について説明します。 | |
カメラ データのキャプチャ | Mixed Reality キャプチャのサンプル | Windows 10 C++ | 実際の世界とデジタル世界を写真やビデオとして混ぜ合わせる一人称エクスペリエンスをキャプチャします。 |
リサーチ モードのサンプル | Windows 10 C++ | 研究アプリケーション用の HoloLens デバイス上の主要なセンサーへのアクセス。 | |
Holographic Remoting | Holographic Remoting プレーヤー | Windows 10 C++ | Wi-Fi 接続を使用して、PC からMicrosoft HoloLensにホログラフィック コンテンツをリアルタイムでStreamします。 |
Azure Remote Rendering サンプル | Unity C# | ここに記載されているサンプル データのリソースを使用して、Azure Remote Rendering サービスをテストします。 | |
タスクの管理とガイダンス | Dynamics 365 Remote Assist | HoloLens、HoloLens 2、Android、または iOS デバイス上のDynamics 365 Remote Assistを使用して、さまざまな場所から共同作業を効率的に行うことができます。 | |
Dynamics 365 Guides | オペレーターが作業フロー中に、必要なタイミングと場所を示すホログラフィック命令を提供する際に役立ちます。 | ||
ワールド ロック ホログラム | ワールド ロックされた物理サンプル | Unity C# | World Locking Tools のワールド ロック座標系で有効になっているいくつかの仮想物理エクスペリエンスについて説明します。 |
スペース ピンのサンプル | Unity C# | 現実世界の機能を持つ大きなオブジェクトまたはオブジェクトを配置する必要がある、現実世界のアプリケーションの内部作業に近づきます。 スペース ピンのサンプルでは、スペース ピン機能の簡略化された、より焦点を絞ったビューが提供されます。 | |
レイ ピンの例 | Unity C# | MRTK アフォーダンスを使用してマーカー オブジェクトを位置に手動で操作して、スペース ピンを設定する方法を示します。 | |
電力と熱の管理 | 電力 & 熱の管理 | Unity C#、Win32 C++ | HoloLens 2が暖かい環境で実行されている場合、またはパフォーマンス要件が高い場合 (CPU/GPU 使用率、周辺機器の使用など)、PowerThermalNotification SDK を使用して通知イベントをサブスクライブし、デバイスの動作を長くすることができます。 PowerThermalNotification API リファレンスを参照してください。 |
OpenXR の基本的なシナリオを構築する
基本的な Mixed Reality シナリオを初めて構築する場合は、これらのサンプルを使用して作業を開始できます。
Unity 2020 をターゲットにしてHoloLens 2または Mixed Reality アプリケーションを構築する開発者は、クロスプラットフォーム互換性を向上させるために Windows XR プラグインの代わりに OpenXR プラグインを使用できます。 Mixed Reality OpenXR プラグインは、Mixed Reality Toolkit (2.7.x) の最新バージョンでも適切に動作します。
サンプル | リファレンス記事 | プラットフォーム | 説明 |
---|---|---|---|
Unity サンプルを使用した OpenXR のMixed Reality | OpenXR プラグインの使用 | Unity C# | これらのサンプル プロジェクトでは、Mixed Reality OpenXR プラグインを使用して、HoloLens 2またはMixed Reality ヘッドセット用のUnity アプリケーションを構築する方法について説明します。 次のサンプル シナリオについて説明します。 |
OpenXR MRTK Base Unity プロジェクト | readme のサンプルを参照してください | Unity C# | このリポジトリには、Microsoft Mixed Reality Toolkit Foundations および Standard Assets パッケージと Microsoft OpenXR プラグイン パッケージで設定されたUnity プロジェクトが含まれています。 |
Unity 2020.3 と MRTK 2.7.2 の使用 | MRTK とは | Unity C# | MRTK-Unity は、Unityでのクロスプラットフォーム MR アプリ開発を加速するために使用される一連のコンポーネントと機能を提供する Microsoft 主導のプロジェクトです。 |
OpenXR エクスプローラー | readme のサンプルを参照してください | C++、Windows、Linux、OpenXR | OpenXR エクスプローラーは、OpenXR 開発者向けの便利なデバッグ ツールです。 これにより、OpenXR ランタイム間を簡単に切り替えたり、ランタイムでサポートされている拡張機能の一覧を表示したり、OpenXR 仕様の関連部分への直接リンクを使用して、一般的なプロパティと列挙型を検査したりできます。 |
Mixed Reality開発者向けの OpenXR サンプル | OpenXR とは | C++ | これらの OpenXR サンプルでは、C++17 と Direct3D 11 が使用されます。 同じソース コードは、HoloLens 2で実行されている UWP アプリケーションと、Windows Mixed Realityイマーシブ ヘッドセットを備えた Windows Desktop で実行されている Win32 アプリケーションで機能します。 |
Mixed Reality でのコラボレーション
複合現実では、エクスペリエンスを共有し、共同作業を行うために、仮想的にユーザーが集います。 ここに示すサンプルは、このようなコラボレーションを可能にするいくつかの機能を示しています。
ユーザー ID
このサンプルでは、Azure Active Directory (AAD) 資格情報を使用してHoloLens 2 デバイスを設定し、iris ログインを使用するようにデバイスを構成します。
サンプル | リファレンス記事 |
---|---|
HoloLens 2での AAD ログイン | Microsoft ID プラットフォームの概要 |
空間相互作用 - 基本的なホログラムのサンプル
このサンプルは、Windows Mixed Realityで実行され、回転するキューブをレンダリングします。 キューブを新しい位置に配置することで操作でき、さまざまな入力メソッドを使用できます。 このサンプルは、ヘッドセット デバイスが接続されている PC と、Microsoft HoloLensでも機能します。
サンプル | リファレンス記事 |
---|---|
Windows ユニバーサル サンプル - 基本的なホログラム | readme のサンプルを参照してください |
シーンの理解
シーンの理解は、Mixed Reality開発者に構造化された高レベルの環境表現を提供します。 シーン理解は、既存の Mixed Reality ランタイムの機能を組み合わせることで、直感的で環境に配慮したアプリケーションを開発するために設計されています。 これらのランタイムは、非常に正確ですが、構造化が少ない空間マッピングと新しい AI 駆動ランタイムです。
サンプル | リファレンス記事 | プラットフォーム | 説明 |
---|---|---|---|
Mixed Reality シーン理解のサンプル (SU SDK) | シーンの理解 | C# と SU SDK のUnity | HoloLens 2での Scene Understanding を紹介するUnity ベースのサンプル アプリケーション。 |
Scene Understanding サンプル (MRTK + SU SDK) | シーン理解オブザーバー (MRTK) | Unity C#、MRTK + SU SDK | MRTK + Scene Understanding SDK サンプル。 |
コンテキスト データ オーバーレイ
コンテキスト データは、イベント、ユーザー、またはアイテムのより広範な理解を提供する背景情報です。 拡張現実 (AR) を使用すると、この情報を物理オブジェクトと正確に表示して、分析情報、指示、サービス レコード、その他の重要なデータを提供できます。
QR コード
HoloLens 2は、ヘッドセット周辺の環境内の QR コードを検出し、各コードの実際の場所に座標系を確立できます。
サンプル | リファレンス記事 |
---|---|
Unityでの QR コード追跡 | QR コード |
ポスター トラッカーのサンプル
多くの場合、ホログラムを現実世界のオブジェクトに配置したり、複数の HoloLens デバイスを共通のワールド座標セットに合わせて配置したりして、全員が同じ場所に同じホログラムを見ることができるようにすると便利です。 たとえば、Unity シーンでは、シーン (ゲーム ボードなど) を固定する "ポスター" を追加し、その上または周囲にホログラムを追加できます。 次に、ポスターを印刷し、テーブルの上に置き、校正/配置ツールを実行します。これにより、ポスターのホログラフィック バージョンがポスターの物理バージョンと一致するように移動します。 これにより、リンクされているすべてのホログラムが正しい配置に移動されます。
サンプル | リファレンス記事 |
---|---|
ポスター校正サンプル | readme のサンプルを参照してください |
Mixed Reality デジタル ツインを構築する
このサンプルでは、Azure Digital Twins とリアルタイム 3D プラットフォームである Unity を使用して、Mixed Reality HoloLens 2 アプリケーションを作成する方法について説明します。
サンプル | リファレンス記事 |
---|---|
Azure Digital Twins と Unity を使用して Mixed Reality デジタル ツインを構築する | 完全なラーニング パス |
カメラ キャプチャ
Mixed Realityデバイスがキャプチャした非構造化環境センサーデータは、私たちの周りの物理世界の強力な抽象的またはホログラフィック表現に変換されます。
ホログラフィック Mixed Reality キャプチャ
Mixed Reality Capture (MRC) は、写真またはビデオとして現実とデジタルの世界を組み合わせた一人称エクスペリエンスをキャプチャし、他のユーザーとリアルタイムで見るものを共有します。
サンプル | リファレンス記事 |
---|---|
Mixed Reality キャプチャ のサンプル | Mixed Reality キャプチャ |
研究モード
研究モードは、デバイス上の主要なセンサー (特に展開を目的としていない研究アプリケーション用) へのアクセスを提供するために、第 1 世代の HoloLens で導入されました。 次のサンプル アプリケーションは、Research Mode ストリームにアクセスして記録し、 組み込みおよび extrinsic を使用する例です。
サンプル アプリケーション | リファレンス記事 |
---|---|
HoloLens (第 1 世代) | 研究モード |
HoloLens 2 | 研究モード |
Holographic Remoting
Holographic Remoting Player は、Holographic Remoting をサポートする PC アプリとゲームに接続するコンパニオン アプリです。 Holographic Remoting は、Wi-Fi 接続を使用して PC からMicrosoft HoloLensにホログラフィック コンテンツをリアルタイムでストリーミングし、HoloLens (第 1 世代) とHoloLens 2でサポートされます。
サンプル | リファレンス記事 |
---|---|
Holographic Remoting のサンプル | Holographic Remoting の概要 |