VRChat
のっそり猫のっそり猫

Oculus Touch 仮想トラッカー化ツール

*直近の更新内容* 2021 3/02 V1.4 アバターキャリブレーション後向けの仰俯角補正 「追加補正」キーを追加。 [ツール概要] 3個めのOculus Touchを仮想のトラッカーとして SteamVRで利用するツールです。 主な用途は腰トラッキングとか。 仮想トラッカー単体、及び 仮想トラッカー(腰)+KinectToVR(両足)の組み合わせで、 VRChatとVirtualMotionCaptureでの動作を確認しています。 (2019-04/04現在) LIVも併用可。 他ツールではLIVのコンポジターを開くと 仮想トラッカーが消滅して併用できないため作成しました。 Windows10(7/8/8.1は未確認) 64bit版専用 [導入方法] 1) 3個めのTouchコントローラーをVR Objectに設定  Oculusアプリの「デバイス設定」→「Riftを設定」→ 「VR objectをペアリング」で  3個めのTouchコントローラーをVR objectに設定します。 2) OpenVR InputEmulatorを導入  SteamVRで入力機器をあれこれするツールですが  仮想トラッカーの作成に内部的に利用します。  簡単ですが、詳しいDL/導入方法などはgoogle検索で。  下記URLからダウンロード。 (OpenVR-InputEmulator-v???.exe というリンク) https://github.com/matzman666/OpenVR-InputEmulator/releases [利用方法] 1) STEAM VRを起動しておきます(重要) 2) 両手のTouchコントローラーが既に有効なことを確認。 3) VR objectにしたTouchコントローラに電池を入れます。 4) OculusVirtualTracker(このアプリ)を実行 2を忘れると、VRchat等で仮想トラッカーがコントローラー扱いに なってしまうことがあるようです。 3~4は順不同で大丈夫なはず。 以上で仮想トラッカーがOculus画面上に現れているはずです。 …だったのですが、Steamのアップデートの仕様変更で 主に下方向にズレるという現象が起きています。 対処方法は、次項 [位置補正] を参照。 OculusVirtualTrackerがエラーで起動しない場合、 以下のランタイムを導入することで解決するかもしれません。 https://www.microsoft.com/ja-jp/download/details.aspx?id=53587 終了はCTRL+Cで。 閉じるボタンでもいいんですが、 仮想トラッカーが止まったまま残ります。 アプリによってうまく利用できないときは、 SteamVRのトラッカー設定で役割設定したり 逆に無効にしたりしてみるといいでしょう。 [位置補正(オフセット)] トラッカーの位置を補正するには SteamVRのダッシュボードにある OpenVR InputEmulatorを開いて、Deviceで「VR Object(Tracker)」を選択、 DeviceOffsetsを開いて、位置を補正後に左上の←で戻り、 NewProfileで名前をつけ、Include DeviceOffsets をチェックして保存すれば、 SteamVR起動ごとにDevice選択→Profileを選んで Applyで位置補正がされます。 次項の [オフセットの保存と自動読み込み] で、 補正したオフセット値の保存と自動再適用も可能です。 補正値は環境によりますが、当方では以下でだいたいあっていますので参考に 微調整してみてください。 WorldFromDriver Offsetの Y:85.0 DriverFromHeadOffsetsの Pitch 25.0度 調整する際は、SteamVR起動直後にオプション -ml か -mrで仮想トラッカーを 起動すると表示モデルがTouchになるので活用してみてください。 [オフセットの保存と自動読み込み] InputEmulatorで位置補正した後、OculusVirtualTrackerの画面で CTRL+Oキー(アルファベット)でオフセット値が保存されます。 保存されたオフセット値は、仮想トラッカー起動時に自動で読み込まれ 適用・反映されます。 ただし、InputEmulatorのDeviceOffset画面には見た目上数値が 反映されないので、修正するときは一度プロファイルを適用するか 一旦クリアして修正を行ってください。 (CTRL+Sによる再保存も忘れずに) 自動読み込みを無効にするには、「OculusVirtualTracker.exe」と 同じフォルダに生成された「offset.dat」を削除してください。 [オフセットの追加補正] PageUp/Downキーで仰俯角の追加補正が出来ます。 追加補正は、CTRL+Oキーで保存されない一時的な補正です。 主にVRChat等でキャリブレーション後の 強制補正を想定したものですが、追加補正後にアバター変更等で 再キャリブレーションをするとVRChat側で追加補正が吸収されてしまうので、 再キャリブレーション後追加補正が必要になります。 念の為、再キャリブレーション直前にHomeキーで追加補正のリセットを しておくことをおすすめします。 [起動オプション] -h オプションの表示 -mt トラッカーモデルを [汎用トラッカー] に設定(デフォルト) -mv トラッカーモデルを [VIVEコントローラー] に設定 -ml トラッカーモデルを [Oculus Touch(左手)] に設定 -mr トラッカーモデルを [Oculus Touch(右手)] に設定 トラッカーモデルとはHMD上のトラッカー位置に表示される3Dモデルです。 (変更時は先にSteamVRの再起動が必要) [仕様上の制限] コントローラーと違い、仮想トラッカーは トラッキングを失うと姿勢(角度)情報も更新されなくなります。 これはOculusSDKの問題で、改善の要望を出してはいますが 現在のところは仕様です。 [更新履歴] 2021 3/02 V1.4 アバターキャリブレーション後向けの仰俯角補正 「追加補正」キーを追加。 2020 1/29 V1.3 仮想トラッカーにInputEmulatorで設定した オフセット値を自前で保存・自動再適用できるようにした。 仮想トラッカーを追加する際、他のアプリケーションが IEを利用して追加した仮想デバイスを乗っ取る問題を修正。 2020 1/23 V1.2 HTCトラッカーを併用する場合など、SpaceCalibratorで LightHouse空間の補正した場合、HTCトラッカーに 偽装していた関係で仮想トラッカーも影響を受けていたので、 Oculus空間の所属に変更した。 空間そのものの向きはOpenVR-IEではオフセット修正 できないのですが、強引に乗り切っていた場合は 再修正が必要になりますのでご注意ください。 2019 4/19 V1.12 加速度も反映するようにした。 2019 4/14 V1.11 センサーから外れたとき、SDKの仕様で初期姿勢(角度)に 戻されるのを、直前の姿勢を維持するよう補正変更。 一瞬のロストトラッキングでも荒ぶるのが緩和されるはず。 2019 4/12 V1.10 プロセス優先度を高に設定するようにした。 SteamVRで表示されるアイコンをトラッカーに変更。 HMD上に表示される3Dモデルを汎用トラッカーに変更。 起動オプションでいくつかから選べるようにした。 2019 4/4 V1.00 リリース ノーサポートですので、ご寄付いただける場合でも 事前に動作を確認してみてください。 動かなかったら心苦しいので。 再配布は禁止します。 Do not redistribute. このページへ誘導してあげてください。 https://nossori.booth.pm/items/1303330

*直近の更新内容* 2021 3/02 V1.4 アバターキャリブレーション後向けの仰俯角補正 「追加補正」キーを追加。 [ツール概要] 3個めのOculus Touchを仮想のトラッカーとして SteamVRで利用するツールです。 主な用途は腰トラッキングとか。 仮想トラッカー単体、及び 仮想トラッカー(腰)+KinectToVR(両足)の組み合わせで、 VRChatとVirtualMotionCaptureでの動作を確認しています。 (2019-04/04現在) LIVも併用可。 他ツールではLIVのコンポジターを開くと 仮想トラッカーが消滅して併用できないため作成しました。 Windows10(7/8/8.1は未確認) 64bit版専用 [導入方法] 1) 3個めのTouchコントローラーをVR Objectに設定  Oculusアプリの「デバイス設定」→「Riftを設定」→ 「VR objectをペアリング」で  3個めのTouchコントローラーをVR objectに設定します。 2) OpenVR InputEmulatorを導入  SteamVRで入力機器をあれこれするツールですが  仮想トラッカーの作成に内部的に利用します。  簡単ですが、詳しいDL/導入方法などはgoogle検索で。  下記URLからダウンロード。 (OpenVR-InputEmulator-v???.exe というリンク) https://github.com/matzman666/OpenVR-InputEmulator/releases [利用方法] 1) STEAM VRを起動しておきます(重要) 2) 両手のTouchコントローラーが既に有効なことを確認。 3) VR objectにしたTouchコントローラに電池を入れます。 4) OculusVirtualTracker(このアプリ)を実行 2を忘れると、VRchat等で仮想トラッカーがコントローラー扱いに なってしまうことがあるようです。 3~4は順不同で大丈夫なはず。 以上で仮想トラッカーがOculus画面上に現れているはずです。 …だったのですが、Steamのアップデートの仕様変更で 主に下方向にズレるという現象が起きています。 対処方法は、次項 [位置補正] を参照。 OculusVirtualTrackerがエラーで起動しない場合、 以下のランタイムを導入することで解決するかもしれません。 https://www.microsoft.com/ja-jp/download/details.aspx?id=53587 終了はCTRL+Cで。 閉じるボタンでもいいんですが、 仮想トラッカーが止まったまま残ります。 アプリによってうまく利用できないときは、 SteamVRのトラッカー設定で役割設定したり 逆に無効にしたりしてみるといいでしょう。 [位置補正(オフセット)] トラッカーの位置を補正するには SteamVRのダッシュボードにある OpenVR InputEmulatorを開いて、Deviceで「VR Object(Tracker)」を選択、 DeviceOffsetsを開いて、位置を補正後に左上の←で戻り、 NewProfileで名前をつけ、Include DeviceOffsets をチェックして保存すれば、 SteamVR起動ごとにDevice選択→Profileを選んで Applyで位置補正がされます。 次項の [オフセットの保存と自動読み込み] で、 補正したオフセット値の保存と自動再適用も可能です。 補正値は環境によりますが、当方では以下でだいたいあっていますので参考に 微調整してみてください。 WorldFromDriver Offsetの Y:85.0 DriverFromHeadOffsetsの Pitch 25.0度 調整する際は、SteamVR起動直後にオプション -ml か -mrで仮想トラッカーを 起動すると表示モデルがTouchになるので活用してみてください。 [オフセットの保存と自動読み込み] InputEmulatorで位置補正した後、OculusVirtualTrackerの画面で CTRL+Oキー(アルファベット)でオフセット値が保存されます。 保存されたオフセット値は、仮想トラッカー起動時に自動で読み込まれ 適用・反映されます。 ただし、InputEmulatorのDeviceOffset画面には見た目上数値が 反映されないので、修正するときは一度プロファイルを適用するか 一旦クリアして修正を行ってください。 (CTRL+Sによる再保存も忘れずに) 自動読み込みを無効にするには、「OculusVirtualTracker.exe」と 同じフォルダに生成された「offset.dat」を削除してください。 [オフセットの追加補正] PageUp/Downキーで仰俯角の追加補正が出来ます。 追加補正は、CTRL+Oキーで保存されない一時的な補正です。 主にVRChat等でキャリブレーション後の 強制補正を想定したものですが、追加補正後にアバター変更等で 再キャリブレーションをするとVRChat側で追加補正が吸収されてしまうので、 再キャリブレーション後追加補正が必要になります。 念の為、再キャリブレーション直前にHomeキーで追加補正のリセットを しておくことをおすすめします。 [起動オプション] -h オプションの表示 -mt トラッカーモデルを [汎用トラッカー] に設定(デフォルト) -mv トラッカーモデルを [VIVEコントローラー] に設定 -ml トラッカーモデルを [Oculus Touch(左手)] に設定 -mr トラッカーモデルを [Oculus Touch(右手)] に設定 トラッカーモデルとはHMD上のトラッカー位置に表示される3Dモデルです。 (変更時は先にSteamVRの再起動が必要) [仕様上の制限] コントローラーと違い、仮想トラッカーは トラッキングを失うと姿勢(角度)情報も更新されなくなります。 これはOculusSDKの問題で、改善の要望を出してはいますが 現在のところは仕様です。 [更新履歴] 2021 3/02 V1.4 アバターキャリブレーション後向けの仰俯角補正 「追加補正」キーを追加。 2020 1/29 V1.3 仮想トラッカーにInputEmulatorで設定した オフセット値を自前で保存・自動再適用できるようにした。 仮想トラッカーを追加する際、他のアプリケーションが IEを利用して追加した仮想デバイスを乗っ取る問題を修正。 2020 1/23 V1.2 HTCトラッカーを併用する場合など、SpaceCalibratorで LightHouse空間の補正した場合、HTCトラッカーに 偽装していた関係で仮想トラッカーも影響を受けていたので、 Oculus空間の所属に変更した。 空間そのものの向きはOpenVR-IEではオフセット修正 できないのですが、強引に乗り切っていた場合は 再修正が必要になりますのでご注意ください。 2019 4/19 V1.12 加速度も反映するようにした。 2019 4/14 V1.11 センサーから外れたとき、SDKの仕様で初期姿勢(角度)に 戻されるのを、直前の姿勢を維持するよう補正変更。 一瞬のロストトラッキングでも荒ぶるのが緩和されるはず。 2019 4/12 V1.10 プロセス優先度を高に設定するようにした。 SteamVRで表示されるアイコンをトラッカーに変更。 HMD上に表示される3Dモデルを汎用トラッカーに変更。 起動オプションでいくつかから選べるようにした。 2019 4/4 V1.00 リリース ノーサポートですので、ご寄付いただける場合でも 事前に動作を確認してみてください。 動かなかったら心苦しいので。 再配布は禁止します。 Do not redistribute. このページへ誘導してあげてください。 https://nossori.booth.pm/items/1303330