本日は HoloLens の技術調査枠です。
Unityのスクリプトで実行環境がHoloLensか識別する方法について記事にします。
実行環境の識別方法
スクリプトから実行中のデバイスを識別する場合、SystemInfo.devicemodel を利用します。
docs.unity3d.com
例えば以下のように HoloLens か否かを識別できます。
if (SystemInfo.deviceModel.Contains("HoloLens")) { // HoloLensでの実行処理... } else { // HoloLens以外の実行処理... }
実機での動作を確認する
実際にアプリを作成し HoloLens での動作を確認してみます。
以下の記事を元に HoloLens プロジェクトを作成します。
bluebirdofoz.hatenablog.com
シーン中のテキストパネルは以下の手順で作成しています。
bluebirdofoz.hatenablog.com
HoloLensの判定結果と取得デバイス名をテキストに表示する以下のスクリプトを作成します。
・DeviceChecker.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class DeviceChecker : MonoBehaviour { /// <summary> /// 出力用テキストフィールド /// </summary> private UnityEngine.UI.Text p_text; /// <summary> /// 起動時処理 /// </summary> private void Start() { // Textコンポーネントを取得 p_text = GetComponent<UnityEngine.UI.Text>(); // デバイス名を出力 string deviceName = SystemInfo.deviceModel; p_text.text = deviceName + System.Environment.NewLine; // HoloLensか否かをチェック bool isHoloLens = SystemInfo.deviceModel.Contains("HoloLens"); if (isHoloLens) { p_text.text += "これは HoloLens です"; } else { p_text.text += "これは HoloLens ではない"; } } }
作成したスクリプトを Text オブジェクトにアタッチします。
UnityEditor 上で動作確認してみると、テキストに判定結果が表示されます。
これを HoloLens 向けにプロジェクトをビルドしてインストールします。
UnityプロジェクトのビルドとHoloLensへのインストール手順については以下を参照してください。
bluebirdofoz.hatenablog.com
HoloLensでの動作確認
HoloLens 上で動作確認を行います。
以下の通り、HoloLens と判定されれば成功です。