VRChatを初めて3日目にして、VRChat内でEWI(ウィンドシンセサイザー)を吹くことに快感を覚え、 もっと吹いてる姿を自然にみながら(?)吹きたいという欲求が爆発し、Tracker課金に走りました。
とはいえ、いきなり一式揃えるのは...ということで、まずはTracker1個とBaseStation1個で腰だけ追加したい!
と思ってやったのですが、想像以上の沼沼感。。
というわけで、その過程を記録として残しておきます。
※ この記事を書いてる途中で、Tracker2個+BaseStation1個増えて、無事フルトラッキングになりました
Vive Tracker と BaseStation を認識させるまでの道のり
"そもそも分かっている人が" がやる手法なので、暗黙の前提の上での記事が多くて沼った。
SteamVRから認識しない問題
開封して、USBで接続したんだけどね、まったく認識しないわ!
という沼にはまり色々試行錯誤。
Trackerのペアリング自体はできることを確認したけど、デバイス一覧には出てこないし、メニューにもそれっぽいのが出てこない。
OpenVRを入れるのだ!
この方の記事に辿り着いて、
あ、そもそもOculusとViveのシステムを混在させることがイレギュラーなんだなと、ということを理解。
その上で、
- OpenVRの導入
- Deviceの設定ファイルの書き換え
を実施して、デバイス一覧から見えるように!やったー!
ファームアップデートで文鎮化
と、喜んだのもつかの間。
ファームアップデートかけた後、ベースステーションの電源が一切入らなくなるという悲しい事態に...
また私の悪魔の腕が壊してしまったか...(仕事でNetwork機器が壊すことで定評がある)
と途方に暮れて、色々探していたら、確かにやべー状態なんだけど、セルフ対応も可能と言う話を発見。
手順に従ったら、無事起動してくれて、ほっと一安心...
ところでベースステーションの A.b,c モードって何?
そもそもモードの存在をしらなくて、最初全くTrackerを認識しなくて発狂してました。(bになってた)。
どうも、
- 1台の時 => Aモード
- 2台の時 => 片方はb, もう片方はc
とするらしい。理由は分からないけどねぇΣ(´□`;)
認識が不安定
腰Trackerをヒップバッグに荷物固定の紐でつけていたが、あ、これ隠れる面積多すぎてダメなやつじゃない?
ってあまりに認識不安定になってるのをみて思った。
試しに、ヘアゴムにしてみたら、少しはマシに。
なお最終的には、他の方と同じように
- 前面は全く遮らない
- 腰から少し距離を離す
という感じになった。これでも腰のトラッキングはネックになりやすいんだよ、本当に...
VRChatでのフルトラッキングできるかな...?
Steam VR 版 VRChatを起動!
Oculus版のVRChatを起動して、何にも認識しない、、なんでだ。。
と思ったら、Steamのシステムを使う場合、SteamVRがわのVRChat起動が必要なんだね!
っていうことを理解。
そう、QuestのVRChat、OculusのVRChat、SteamのVRChat は全て別物。
Steamのシステムは、ドライバとして動くのではなく、SteamVRのゲームのシステムの一部として動くという話だった。
Steam VR 版 VRChatがうごかない!
起動したはいいが、様子がおかしい。
起動したら、アバターがTポーズで固まって何も反応しない。。
調べてみると、キャリブレーションモードで起動するから、最初に両腕のトリガーボタンを押してキャリブレーションせよとのこと。
しらんがなー。
キャリブレーション後
なんとかアバターが動くようになったが、Oculus Touchのスティック操作が全く効かない状態に。
切り分けのため、Trackerを切った状態で、SteamVR版 VRChatを起動してみた。
これはちゃんと動く。
なんだこれ??
だいぶ試行錯誤したが、Discord の VRChat Quest板で質問を投げたら、衝撃の事実が。
なんと、起動前はTracker OFF、VRChatにログインしてからTrackerを入れる => キャリプレーションするという手順が必須という!
実際やったところ、解決しました。
よし、これでついに念願のフルトラッキングを...と思ったら、動かした時のトラッカーの移動座標が90度くらいねじれて動く現象に遭遇...(足を前に出すとTrackerは左に動く、、みたいな)
これはOpenVRのOffset設定の問題で、座標がずれてるだけでなく、回転軸もずれてることがあり、その場合は、Worldに対するRotateを調整する必要がある、、ということらしい。
つまり、Worldに対するRoateを調整=>Worldに対する座標のOffsetを調整=>デバイス自体のRotateを調整、、というステップで補正をかけるのが正しいようだ。
と、ここまでやって、ようやく念願のフルトラッキングたどり着きました。いやー、長かったけど、やっぱりいいものですね。。(鏡の前で1時間ぐらい踊ってた)
補正値のプリセット登録について
補正値はプリセットとして登録できて、次回以降は手でぽちぽちやるのではなく、プリセット選択から即座に反映が可能。
ただ、起動パターン(?)ごとにずれ方がいくつかあるようで、みたことないずれ方をしたら、つど手動調整=>プリセット追加をしてゆくことになる。
そして、初回気づかなかったが、プリセット値は1つのTracker単位で保存される。
つまり、Tracker単位で補正値が異なる場合はその数だけプリセット保存が必要。
といいつつ、Device回転以外はだいたい同じずれ方をするので、1つのプリセットをそれぞれのTrackerに適用して、微調整は都度、、みたいな感じで良いと思う。
一度補正しても、再起動すると設定は吹き飛ぶので、また補正が必要になる。
残る問題
腕の関節が良くガチャるけど、これはアバター側のリグの可動範囲調整でどうにかなる問題なのか、ちょっと気になる。
あとはベースステーションとの位置関係の都合だとおもうけど、右90度-180度ぐらいの回転座標にいる時、えぐい歪み方をする(スカートとかが顕著)。このへんも、やる気がでたら原因を突き止めていきたいところ...