本日はHoloLens 2小ネタ枠です。
近年グラフィックに関する質は向上しており、実写と見間違えるようなCGも増えつつあります。
以前はこういったものはゲームなど自由視点の描画ではなく、映画や映像としての時間をかけたレンダリングであるプリレンダリングを使用したものが大半でしたが、近年ではリアルタイムレンダリングでもリアルなグラフィックは登場しつつあります。
Unityでよりリアルな映像の質を求めるにはHDRPを使用することがありますが、今回はHoloLens 2でUnityHDRPの描画を行っていきます。
〇HDRPとは?
HDRP(High Definition Render Pipeline)はUnityの比較的新しいレンダリングパイプラインで、ハイエンドデバイスやコンソール機をターゲットとしたハイクオリティレンダリングが行えるパイプラインです。
特に意識しなくても写実的なレンダリングが行える半面データ量の多さや処理の複雑さなどハイコストハイリターンな機能となります。
〇HoloLensでHDRPを使用する
HDRPは23年現在のところハイエンドPCでの使用を前提に開発・提供されており、HoloLensに向けてアプリケーションをビルド・デプロイすることはできません。
しかしながら今回はHolographicRemotingを使用してPCに向けてアプリケーションを実行し、HoloLensは描画を行うという仕組みでHDRPの描画を行います。
〇環境
・Unity2021.3.5f1
・HoloLens 2
・MRTK 3.0.0-pre.14
・Windows 11PC
〇HDRPプロジェクトでHoloLensへHolographicRemotingを行う
HDRPプロジェクトでHolographicRemotingを行うことは通常のHolographicRemotingの動作と同様に行うことができます。
しかしながらHDRPではRenderingModeでSinglePathInstancingが対応していない場合があり、ProjectSettingsからOpenXRの設定を開きRenderingModeをMultiPassに切り替える必要があります。
この動作によってHoloLensでも正常にHDRPの描画が行うことができるようになります。
注意点としてはネットワークの帯域を消費するため安定したネットワークorケーブルを使用してHolographicRemotingを使用する必要があります。