トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

OculusLink使用時に手がコントローラー代わりになる問題とOculusIntegrationのアップデート要素見る

OculusLink使用時、手がコントローラー代わりになる問題

古いOculusIntegrationが入っているUnityプロジェクトを、OculusLinkをヘッドセット代わりにUnityEditorで実行したら、コントローラーで動く部分が、ハンドトラッキングでも動いた。

コントローラーを水平に置いておそらくQuest内でハンドトラッキングモードに切り替わると、いままでコントローラーの動きをもとに動いていたものが手の位置とか角度をもとに動く!

でも角度はあってない↓

f:id:bibinbaleo:20200813082541p:plain

↑は手を前にピーンって伸ばした状態だが、HandModelは右を向く

↓コントローラーモードのとき

f:id:bibinbaleo:20200813082646p:plain

しかもピンチをしたら私の作ったアプリではXボタンに割り当てた機能に反応する。

(この文章で伝わっているのだろうか。)

ControllerOnly実験

OVRManagerのHandTrackingSupportをControllerOnlyにしたら、この症状は起きないのだろうか

19.1で実験しようと思ったら、HandTrackingSupportが表示されてない!・・・

f:id:bibinbaleo:20200813083937p:plain

と思ったら、以前やった時もAndroidへのSwitchPlatformとかQuestビルド用の準備をしないと表示されなかったみたい

f:id:bibinbaleo:20200813082644p:plain

【OculusHandTracking】環境構築とサンプルシーンを見る【Unity】 - トマシープが学ぶ


AndroidにSwitchPlatformしたら出てきた。

f:id:bibinbaleo:20200813084045p:plain

QuestFeatureとSecurityという項目が追加されているのね。

結果

デフォルトのControllerOnlyでOculusLinkを試したが、手の動きは反応した。

やはりこれはQuestアプリでの設定だね。

 

ということで、OculusLinkをUnityEditorでPCVRの代わりとして使うときハンドトラッキングモードで反応しないようにするにはQuest側でハンドトラッキングをオフにする(もしくは自動有効をオフ)にするのが良さそう。

f:id:bibinbaleo:20200813090529p:plain

UnityEditor or 開発環境のせい?

Clusterとか他のアプリでもOculusLinkを使って試したが、起こらなかった。

まあ今まで私も何回も使ってたけど、そんなこと起こらなかったもんね。

自分のアプリもPCビルドして試したら起こらなかった。

つまりUnityEditorもしくはVRTKとかOculusIntegrationのバージョンとか何かしらの開発環境のせいで起こっているみたい!

OculusIntegrationのアップデート情報など

こちらの記事が詳しいです。

qiita.com

全般的にこちらが詳しいです。

framesynthesis.jp

システムキーボード

面白そうなのは、v19でQuestでシステムキーボードを呼び出せるようになったことですね!

OVRManagerのRequiresSystemKeyboardにチェックを入れると、InputFieldを押したときなどに出てくるらしい!スマホとかでシステムキーボードが出てくるときと同じ条件だと思う(しらないけど)

f:id:bibinbaleo:20200813093022p:plain

 このツイートのスレッドにあるように今はQuest側いろいろ再起動とかしないと出てこなさそう。

まあ今は使う用事ないのでいいや。

OculusLinkでもハンドトラッキング動く

以前はビルドしないとハンドトラッキング(指も動くほう)が試せなかったが、今はOculusLinkでつないで、UnityEditorで実行するだけで動く。

v13からすでに対応してたらしい。

HandTestというシーン

f:id:bibinbaleo:20200813084950p:plain

でもこのシーン、ControllerOnlyになってるけどなんで動くんだろう。

手が出るかどうかはOVRHandPrefabがいるかどうかの違いかな

f:id:bibinbaleo:20200813085232p:plain

OVRCameraFade

いつからあるのか知らないけど、シーン切り替え時やStart時に画面をFadeするコンポーネント。

f:id:bibinbaleo:20200813094336p:plain

DebugUIというサンプルシーンのCenterEyeCameraについていた。

f:id:bibinbaleo:20200813094140p:plain

カメラの前にPlaneみたいなのが表示されてそれの透明度が変わっていくという構造

f:id:bibinbaleo:20200813094311g:plain

raspberly.hateblo.jp

OVR Vignette

同じくCenterEyeCameraにつけて使うVignette. v15からある

f:id:bibinbaleo:20200813094428p:plain

ずっとカメラについている。

VRTKのTunnelOverlayみたいに動いたときだけこれがかかるのかと思った

f:id:bibinbaleo:20200813094808p:plain