HoloLens 向けの Unity の開発

Unity のバナー ロゴ

Unity は、市場をリードするリアルタイム開発プラットフォームの 1 つです。 基礎のランタイム コードは C++ で記述され、すべての開発スクリプトは C# を使用して作成されます。 ゲーム、映画、アニメーションの映像を構築する目的であれ、建築や工学上のコンセプトを仮想世界にレンダリングする目的であれ、Unity のインフラストラクチャが支えとなります。 開始する準備ができたら、次の開発チェックポイントに進んでください。

重要

HoloLens 2 に移植する必要がある既存の Unity プロジェクトがある場合は、Microsoft の 移植ガイド を参照してください。 HTK、MRTK v1、または SteamVR を使用しているプロジェクトに関するガイドが用意されています。

開発チェックポイント

次のチェックポイントを使用して、Unity のゲームやアプリケーションを Mixed Reality の世界に移植することができます。 Holograms サンプル アプリのデザイン をまだご確認いただいていない場合、それをダウンロードおよび使用して、Mixed Reality UX の基礎を理解しておくことをお勧めします。

1.はじめに

Unity で開発する場合の最も簡単な方法は、Mixed Reality Toolkit を使用することです。 MRTK は、Mixed Reality 用のプロジェクトの設定を自動化するのに役立ちます。また、開発プロセスを短縮する一連の機能が用意されています。 このセクションの最後まで進めば、Mixed Reality Toolkit、Mixed Reality アプリ用に適切に構成された開発環境、自身で構築した、Unity で実際に動作する MRTK プロジェクトについて、基本的な理解を得ることができます。

Checkpoint 結果
Mixed Reality Toolkit の概要 作業を始めるにあたって、まず Mixed Reality Toolkit とその機能を理解できます
Mixed Reality 機能ツールをダウンロードします Mixed Reality 機能パッケージを検出し、更新し、Unity プロジェクトに追加するための新しい開発者ツールです
開発者環境を設定する 最新の Unity パッケージをダウンロードしてインストールし、Mixed Reality 用のプロジェクトをセットアップできます
HoloLens 2 チュートリアル シリーズを修了する HoloLens 2 ハードウェア向けの初級レベルの MRTK チュートリアルを確認できます

重要

Mixed Reality Toolkit をインポートせずに新しい Unity プロジェクトを作成する場合には、Windows Mixed Reality 用に手動で変更する必要がある小規模な Unity 設定のセットがあります。 詳細については、構成ガイドをご覧ください。

注意

プロジェクトに MRTK を設定すると、標準の Unity ゲーム オブジェクト (カメラなど) が、座位のエクスペリエンスに対応してすぐに点灯します。 アプリケーションのエクスペリエンス スケールを変更する手順については、座標系に関するページを参照してください。

2. コア構成要素

Mixed Reality アプリケーションのコアな構成要素はすべて、他の Unity API と一貫した手法で公開されています。 これらの構成要素は、スタンドアロンの機能として利用することも、Mixed Reality Toolkit を介して利用することもできます。 そのすべてが一度に必要になるわけではありませんが、事前に確認することをお勧めします。 以下のコア構成要素について確認したら、個別に、または MRTK を介して Mixed Reality プロジェクトに統合できるさまざまな機能が用意されたツールボックスを使用できるようになります。

機能 機能
カメラ Mixed Reality アプリの画質とホログラムの安定性を完全に最適化します
ワールドロックと空間アンカー 安定化の問題、カメラ調整を解決し、安定した座標系ソリューションを統合します
共有エクスペリエンス 空間アンカー共有を使用して、空間内の固定ポイントに同じホログラムを表示したり、まとめて操作したりできます
視線入力 ホログラムを見ることによってユーザーがホログラムを対象とすることができるようにします
モーション コントローラー Mixed Reality アプリに空間操作を追加します
ジェスチャ Mixed Reality エクスペリエンスの入力として手のジェスチャを使用します
手と視線の追跡 多関節ハンドおよび視線追跡入力をユーザー エクスペリエンスに統合します
空間マッピング 仮想メッシュ オーバーレイを使用して物理領域をマップし、環境の境界をマークします
立体音響 没入型の 3D オーディオを使用してアプリを強化します
[テキスト] 管理しやすいサイズと品質のレンダリングを備えた、シャープで高品質なテキストを使用できます
音声入力 ユーザーが話したキーワード、フレーズ、ディクテーションをキャプチャします

3.高度な機能

Mixed Reality アプリケーションで何らかの役割を果たすその他の主要な機能は、Unity API を通じて利用できます。追加のパッケージやセットアップは不要です。 これらの機能は、MRTK がインストールされているかいないかに関係なく、Unity プロジェクトに追加できます。 Unity によって提供される高度な機能について確認したら、より高度で複雑な Mixed Reality アプリを構築することができるようになります。

機能 機能
フォト ビデオ カメラ Mixed Reality アプリケーションで写真およびビデオ コンテンツをキャプチャできます
フォーカス ポイント 現在表示されているホログラムに対して最適な安定化を施す方法に関するヒントを HoloLens に提供します
追跡の損失 アプリケーションのワールド空間でデバイスがそれ自体の位置を特定できなくなった場合のシナリオを処理できます
キーボード入力 アプリで、実際のキーボードや Mixed Reality のキーボードから入力を取得できます

4.デバイスまたはエミュレーターへのデプロイ

ホログラフィック Unity プロジェクトをテストする準備ができたら、次の手順として、Unity Visual Studio ソリューションをエクスポートしてビルドします。 その VS ソリューションがあれば、実際のデバイスまたはシミュレートされたデバイスを使用して、次の 3 つの方法のいずかでアプリケーションを実行できます。 このセクションの最後まで進めば、開発のニーズに合ったデバイスまたはエミュレーターでアプリケーションをデプロイできるようになります。

5。サービスの追加

開発作業のこの時点で、サービスを追加する必要が生じたり、商用環境でのデプロイへの手助けが必要になったりすることがあります。 Azure Cloud Services を統合することで、プロジェクトを大幅にレベルアップできます。 Microsoft では、お客様が Mixed Reality に関する知識を深化、拡充できるように、いくつかの開始点をまとめています。

Azure Remote Rendering (ARR) は、非常に複雑な 3D モデルをリアル タイムでレンダリングするためのサービスです。 ARR は現在パブリック プレビューの段階です。 HoloLens 2 または Windows デスクトップ PC を対象とした Unity またはネイティブ C++ のプロジェクトにこれを追加できます。

また、追加の Azure サービスに関するサポート ドキュメントの包括的な一覧も提供しています。これらのサービスは、セルフサービス ベースでお客様の Unity プロジェクトに追加できます。

6. ロー コードの代替手段

Microsoft Dynamics 365 Guides は、Microsoft HoloLens 用の Mixed Reality アプリケーションです。必要なときに必要な場所でホログラフィックな指示を出すことによって、オペレーターが作業の流れを学習できるようにします。 これらの指示カードは作業を行う必要がある場所に視覚的にテザリングされ、画像、ビデオ、および 3D ホログラフィック モデルを含めることができます。

次の操作

開発者の仕事に終わりはありません。新しいツールや SDK について学ぶ場合は特にこれが当てはまります。 以降のセクションでは、既に終えた初級レベルの教材からは一歩進んだ領域について説明します。また、行き詰まった場合に役に立つリソースも紹介します。 これらのトピックとリソースは順番に並んでいるわけではないため、お好きなところから自由に参照することができます。

移植

移植したい既存のアプリがある場合は、以下の記事を次に確認してください。

チュートリアル

特定の Mixed Reality 機能をアプリケーションに追加する場合に、そのプロセスをエンド ツー エンドで説明している精選されたチュートリアルがいくつか用意されています。 最も人気のある HoloLens 2 および HoloLens (第 1 世代) のコンテンツを以下に示しますが、各チュートリアルの概要にアクセスするとコレクション全体を確認することができます。

その他の技術情報

独自の Mixed Reality の世界に進む前に、以下に示す MRTK 関連のドキュメントを参照することをお勧めします。 これらの記事は、MRTK の機能を詳しく理解するための出発点になると共に、アプリのパフォーマンスを向上させるための情報も掲載されています。

トピック 説明
MRTK アーキテクチャの概要 MRTK SDK がプロジェクト内でどのように機能するかについて理解を深めます
設定とパフォーマンス アプリをプロファイリングし、Unity の設定を更新して、ホログラム安定化のパフォーマンスを最適化します
MRTK および XR の概要 Unity によって提供される代替の XR パイプラインに転送します

Unity のリソース

このドキュメントに加えて、Unity では、Windows Mixed Reality 機能に関するドキュメントが Unity エディターと共にインストールされます。 Unity が提供するドキュメントには、2 つのセクションが含まれます。

リソース 説明
スクリプト リファレンス ドキュメントのこのセクションには、Unity が提供している、Unity エディターからオンラインでアクセスできるスクリプト API の詳細が含まれています。アクセスするには、[ヘルプ] > [Scripting Reference](スクリプト参照) をクリックします
手動 このマニュアルは、基本的な手法から高度な手法まで、Unity の使用方法の理解に役立つように作られています。オンラインで、または Unity エディターから [ヘルプ] > [マニュアル] をクリックしてアクセスできます

ご意見およびご提案がある場合は、

Unity フォーラムで、Microsoft というタグと以下のタグの組み合わせで対象のプラグインがわかるようにして、フィードバックをお送りください。

  • HoloLens 2
  • Windows Mixed Reality
  • OpenXR
  • XRSDK
  • Legacy XR