UnrealEngine4 × HoloLens 2
自己紹介
山地 直彰
XRを中心に関西とかで活動してる関西のHoloLensの人
最近はだんグラ売ってる
表記について
UnrealEngine4 → UE4
Microsoft HoloLens → HoloLens(無印)
ブループリント → BP
HoloLens 2からUE4がネイティブ対
応!
ということで
UE4 × HoloLens 2の話を
本題の前に1つ小ネタ
(公式的にはHoloLens(無印)向けにUE4で開発はできませんが)
昔UE4でHoloLens用アプリを作成しました
今日の内容
・UE4のHoloLens対応状況
・UE4でのHoloLens 2向けのセットアップ
・UE4でのHoloLens 2向けのデプロイ
・UE4のリモート機能
・UE4から扱うHoloLens 2の各種機能
・アポロデモを見てみる
UE4のHoloLens対応状況
UE4のHoloLens(無印)対応状況
・EpicGames非公式で対応したエンジンコードがGitHubに公開(バージョン古い)
・Holographic Remoting Playerを使ったストリーミング
非公式で対応したエンジンコードがGitHubに公開
こちらに記事を書いているので興味がある
人は見てください
今回の趣旨とは離れるので割愛
(リポジトリ、しばらく前から更新されてい
ないです)
この記事の元になったスライド
Holographic Remoting Player
UE4のドキュメントページやEpicGamesJapanの方のブログ記事にも記載がありま
す
詳細はHoloLens 2と合わせて後述
UE4のHoloLens 2対応状況
・ネイティブサポート
・Holographic Remoting Playerを使ったストリーミング
ネイティブサポート
・実機/エミュレータ向けのパッケージデータの出力
・全機能使えるはず(実機がなかったので、細かい点等要検証)
Holographic Remoting Player
HoloLens(無印)と同様に後述
Immersiveデバイスについて
・4.21の頃から対応済み
・パッケージをインストールできるわけではないので、VRプレビューによる利用
UE4でのHoloLens 2向けのセットアッ
プ
UE4でのHoloLens 2向けのセットアップ
UE4のドキュメントページにしたがって、VisualStudioのセットアップを行う
UE4でのHoloLens 2向けのセットアップ
UE4は4.24のバージョンを使用
インストール後にオプションにてHoloLens 2
の対応プラットフォームを追加する
UE4でのHoloLens 2向けのデプロイ
UE4でのHoloLens 2向けのデプロイ
まずはパッケージ化するための設定を行い、パッケージ化を行う
UE4のドキュメントページにしたがって、パッケージ化するための設定を行う
UE4でのHoloLens 2向けのデプロイ
プラグインからAugmented Realityの中に
あるHoloLens、
Virtual Realityの中にあるMicrosoft
Windows Mixed Reality
をそれぞれ有効化する
UE4でのHoloLens 2向けのデプロイ
次はプロジェクト設定のプロジェクトの
説明の中にあるプロジェクト名、企業名、
企業識別名をそれぞれ設定する
企業識別名は、「CN=」の後に企業名を
加えたものを設定する
UE4でのHoloLens 2向けのデプロイ
プロジェクト設定のプラットフォーム
の中のHoloLensの中にあるビルドター
ゲット設定と証明書の設定を行う
UE4でのHoloLens 2向けのデプロイ
ビルドターゲットの設定はエミュレータ向けか実機向けかを設定する
(出力されるパッケージのアーキテクチャが、エミュレータ向けはx64、実機向け
はArm64になる)
Build for HoloLens Emulationにチェックを入れるとエミュレータ向けに出力
Build for HoloLens Deviceにチェックを入れると実機向けに出力
UE4でのHoloLens 2向けのデプロイ
証明書はPackagingのSigning CertificateのGenerate newボタンを押して、証明書
作成ウィザードを使用する
一旦試すだけとかであれば「None」を選択する形で設定可能
UE4でのHoloLens 2向けのデプロイ
あとは通常通りのUE4パッケージ化の手順で出力できる
ファイルのプロジェクトをパッケージ化から、HoloLensを選択する
UE4でのHoloLens 2向けのデプロイ
パッケージデータが出力されるので、デバイスポータルからインストールするこ
とで実機/エミュレータへインストールできる
UE4のリモート機能
UE4のリモート機能
前述した通り、Holographic Remoting Playerアプリを使って、UE4エディターか
らリモートで実機に接続できる
UE4のリモート機能
(WindowsMixedRealityのプラグイン
を有効にしていれば、)
プロジェクト設定を開くと、プラッ
トフォーム内にWindowsMixedReality
の項目があるので、そこからIPアド
レスの設定を行う
IPアドレスは実機からアプリ起動で
確認できる
UE4のリモート機能
HoloLens(無印)とHoloLens 2向けの設定は「HoloLens 1 Remoting」にチェックを
入れるかどうかで切り替える
UE4のリモート機能
プロジェクト設定でIPアドレスを設定したらConnectボタンを押して、エディタ
からVRプレビューを実行する
UE4のリモート機能
上側が実機上、
下側がPCのエディタからの画面
(キャプチャのタイミングのずれで若干見
た目が違いますが、実際は同じ)
ちなみに起動位置/向きの基準は
Holographic Remoting Playerアプリの起
動位置/向きに依存
UE4のリモート機能でできること
・UE4側の映像/音声を実機に映し出す
・実機からの自身の位置/向きのトラッキング
・実機からのジェスチャー入力
・アイトラッキングや空間認識情報もPCに送信可能
UE4のリモート機能まとめ
基本的なことは一通り動くので、ローカルのネットワークでPCとつなげる場合は、
開発中/実際の運用で利用可能
PC側からの入力も通常通り行えるため、PC側から進行を管理させるようなこと
も可能
ネットワークの設定によっては接続できないので、その点は注意
UE4から扱うHoloLens 2の各種機能
UE4から扱うHoloLens 2の各種機能
・自身の向き/位置のトラッキング
・手のトラッキング
・音声認識
(アイトラッキング、空間認識等の確認がしづらいものは今回は割愛)
自身の向き/位置のトラッキング
VRの開発と同様に通常のCameraコンポーネントを使用して対応可能
手のトラッキング
VRのモーションコントローラーのトラッキングと同様にMotionControllerコンポ
ーネントによって対応可能
HoloLens(無印)だと左右の手の判別は正確ではないようで、時々入れ替わる(ハー
ド的に元々左右の手を判別する機能はありません)
ジェスチャー入力についてはMixedRealityのTriggerイベントで取得可能
(WindowsMixedRealityのImmersive向けの開発と同じ)
音声認識
今回のバージョンから音声認識用の設定
がプロジェクト設定のエンジンのインプ
ット内に追加されており、そこの音声マ
ッピングにて設定を行う
Action NameにBP内で呼び出されるイベ
ント名、Speech Keywordに認識させたい
ワードを設定すると、音声認識によって
対応するイベントが呼び出される
その他
Capabilities(権限関係)の設定や
SpatialMapping(空間認識関係)の設定は
プロジェクト設定のプラットフォームの
HoloLens内から設定する
(音声認識する際はMicrophoneを有効に
する必要がある)
UE4から扱うHoloLens 2の各種機能まとめ
基本的には今までのVR開発で使えていたものが共通して使えるイメージ
なので、基礎的な機能しか使わない場合は、OculusQuestやHTC VIVE等での開発
と共通化が簡単にできそう
空間認識/アンカー系はどうしても専用の処理が入る
アポロデモを見てみる
アポロデモについて
HoloLens 2のデモとして、UE4にて作成されたデモ
アポロ11号の月面着陸ミッションについて色々と見ることができる
昨年末にプロジェクトが公開され、マーケットプレイスから無料で入手できる
アポロデモについて
アポロデモについて
起動時のレベルに全てのデータが入っていて、サブレベルを使ってコンテンツを
切り替えている模様
全体的な情報
まずアンカーの設定を行い、設定が完了すると本編に入っていく流れ
タッチベースの入力によって次々とシーンが進んでいくようになっている
指のトラッキングについて、既存のMotionControllerコンポーネントを拡張して行
っている
アポロデモについてまとめ
UE4でHoloLens向けのコンテンツがないこともあり、タッチベースのUXや指のト
ラッキング等参考になるものではある
ただ、推奨PCスペックが「GPU: RTX 2080 TI、ハイエンド デスクトップ 8 コア
3.5 GHz」だったり、パッケージ化した容量が10GB近かったりとプロジェクトと
しては決して軽くないので、その点は注意が必要
最後に告知を
Osaka HoloLens 2 ハッカソン 2020
2/8(土)~2/9(日)の2日間で、HoloLens 2の開発も
できるハッカソンイベントやります!
豪華ゲストも
学生枠に若干空き有
また、スタッフも募集しています。
以上

UnrealEngine4 × hololens 2