夜風のMixedReality

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

Unity OpenXRプロジェクトでGameViewがロックされてしまう問題の解消

本日はUnityでのxR開発のトラブルシューティング枠です。

〇問題

先日HoloLensアプリ開発中にUnityのゲームウィンドウがロックされてしまい、Input周りを受け付けないトラブルがありました。

特にマウスやキーボードを使用したカメラの移動が全くできず、開発上困ってしまったためトラブルシューティングを行いました。

Lock Input to Game View in order for tracked pose driver to work in editor playmode.
UnityEngine.XR.Management.XRGeneralSettings:AttemptInitializeXRSDKOnLoad () (at Library/PackageCache/com.unity.xr.management@4.1.0/Runtime/XRGeneralSettings.cs:148)

似たようなエラーで実行時に毎フレーム次のようなエラーが発生する場合は別の解消になります。

InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings.

こちらのトラブルシューティングは次の記事を参考にしてください。

redhologerbera.hatenablog.com

〇環境

・Unity 2021.19f1

・UniversalRenderPipeline(URP)

・MRTK v2.7

〇解消

この問題は「エディタ上でEditorWindowが入力を検知できるように画面をロックしている」ことを意味しています。

つまり、何らかの原因でEditorWindowが動いています。

これはワールドメニュー[Window]→[Analysis]→[**InputDebugger]を開きます。

f:id:Holomoto-Sumire:20211116211806p:plain

[Option]を開き[Lock input Game View]をクリックし、必要があれば再度クリックし、チェックを外します。

f:id:Holomoto-Sumire:20211116212016p:plain

筆者の環境ではチェックは入っておらず、見た目上無効の状態でしたが、なぜか有効になっているようで再度無効にすることで問題が解消しました。

以上でOpenXRプロジェクトでGameViewがロックされてしまう問題が解消できました。