夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

HoloLens 2でFPSを表示する

本日はHoloLens2 の開発枠です。

HoloLensアプリに限らずアプリを開発する際開発者はFPSを気にします。

今回はHoloLens実機でのFPSの表示に関しての記事です。

FPSとは?

FPS(Frame Par Second)は一秒間の描画の書き換え回数を指します。

わかりやすい例としてパラパラアニメがあり、枚数が多ければ多いほど美しくキャラクターが動き、逆に枚数が少ないとかくかくキャラクターが動きます。

FPSも同様で高ければ高いほどオブジェクトがきれいに描画され、逆にFPSが小さいとカクつく原因になります。

特にVRHMDの場合全周囲描画されるので、FPSが低いと酔いの原因になってしまうことがあります。 HoloLensの場合は現実の環境の上にオーバーレイしているためオブジェクトがカクついても比較的酔いが発生することは少ないですが、見た目や処理速度に影響があるため高FPSの維持はアプリ開発での重要な要素の一つです。

〇HoloLens 2実機内でFPSを確認する方法

HoloLens 2実機内でFPSを確認する方法はいくつかありますが、今回は2つ取り上げます。

1.MRTKの機能を使用する

 MRTKには[Diagnostics]と呼ばれるアプリ実行時にFPSを含めてデバッグ情報を表示するための機能があります。

 ①MRTKを導入したUnityで[MixedRealityToolkit]のinspectorウィンドウから[Diagnostics]のタグを開き、[Enable Diagnostics System]のチェックボックスにチェックを入れ、有効化します。

 f:id:Holomoto-Sumire:20200822163428j:plain

 ②実機にDiagnosticsが表示されます。 この右上にFPSが表示されます。

f:id:Holomoto-Sumire:20200822163852j:plain
Unityでの表示

2.デバイスポータルを使用して表示させる。

 こちらは前述の方法に比べてアプリケーションに依存しておらずホーム画面を含めあらゆるシーンで確認することができます。

 ①デバイスポータルに接続する。

 デバイスポータルへの接続に関しては以前の記事を参考にしてください。

redhologerbera.hatenablog.com

 ②Hologram stabillyを開く

 f:id:Holomoto-Sumire:20200822164515j:plain

 ③Frame rateから[Display frame rate counter in headset]にチェックを入れて有効化する。

 f:id:Holomoto-Sumire:20200822164646j:plain

 これでHoloLens実機の視野角限界の左上付近に数値が表示されます。 これがFPSです。

 実機でのキャプチャでは描画されないので、画像はHoloLensのディスプレイ直どりになります。

f:id:Holomoto-Sumire:20200822165342j:plain f:id:Holomoto-Sumire:20200822165339j:plain

 ④Frame rateから[Display frame rate graph in headset]にチェックを入れて有効化する。

 こちらはリアルタイムのFPSではなく、FPSの変動をグラフで確認できます。 [Display frame rate counter in headset]と併用できるため両方表示させた場合は現在のFPSが数値で表示され過去のFPSの変動をグラフで確認できます。

f:id:Holomoto-Sumire:20200822165348j:plain

 

以上がHoloLens 2実機でFPSを表示させる方法です。