夜風のMixedReality

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

UnityのSystem.InfoをHoloLensで使用する ②

本日はUnityの調査枠です。

先日、HoloLensでデバイスのバッテリー状況の取得を行いました。

この際にUnityのSystem.Infoを使用しました。

System.Infoクラスはアプリケーションが実行されているデバイスの情報を取得することができます。

例えば昨日はHoloLens2のGPUや筆者のHoloLens 2のデバイスネーム、動作しているデバイスがHoloLens 2であることなどを取得しました。

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

f:id:Holomoto-Sumire:20210222220639j:plainf:id:Holomoto-Sumire:20210222222036j:plain

昨日からSystem.InfoがHoloLensで動表示されるのかを見ています。今回は続きを調べていきます。

〇operatingSystem

その名の通り実行しているOS名を取得します。

実機では次の様に表示されます。

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

OSのバージョンまで取得できました。

〇operatingSystemFamily

アプリケーションが実行されているOSの大枠を取得します。単にmacOSXWindows、Linaxといった情報のみを取得したい場合はこちらを使用するほうが良いようです。

Unity - Scripting API: OperatingSystemFamily

実機では次の様に表示されます。

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

もちろんWindowsが表示されます。。

〇processorCount

現在のプロセッサ数を表示します。

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

〇processorType

プロセッサのタイプを取得します。

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

これはGPUに相当しHoloLens 2にはSnapdragon 850 2.80GHzが搭載されていることがわかります。

〇renderingThreadingMode

レンダリングスレッディングモードを取得します。 レンダリングスレッドモードとはレンダリングにかかわる係数でUnityアプリケーション起動時に指定されます。

実機では以下のように表示されます。

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

マルチスレッドに対応しています。

〇supportedRenderTargetCount

サポートしているレンダリングターゲットの数を表示します。

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

サポートされているレンダリングターゲット数は8になります。

〇supportsAccelerometer

加速度センサーが使用可能かどうかを取得します。

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

HoloLensの自己位置推定(SLAM)では加速度を用いているため当然Trueが返されます。

〇supportsAsyncCompute

非同期計算キューをサポートしている場合はtrueが返され、そうでない場合はfalseが返されます。

docs.unity3d.com

これはfalseが返されました。非同期計算キューはサポートされていないようです。

〇supportsAudio

オーディオがサポートされている場合はTrueが返されるようです。

オーディオが使用できるデバイスと、そうでないデバイスで区別することができるようです。

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

当然Trueが返されます。

〇supportsComputeShaders

Compute シェーダーがサポートされているかどうかを返します。

Computeシェーダーは以下の記事が詳しいです。

qiita.com

GPUにアクセスすることができより高度な処理ができるようです。

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

これはTrueが返されます。

〇supportsGeometryShaders

ジオメトリシェーダーがサポートされているかどうかです。

redhologerbera.hatenablog.com

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

Trueが返されます。 HoloLensの手のメッシュの表現であるHandTrianglesShader等でジオメトリシェーダーの機能が使用されています。

redhologerbera.hatenablog.com

本日は以上になります。