見出し画像

TDPTで対応したOSC Trackersについて

はじめに

https://www.meta.com/ja-jp/experiences/4821132827998004/

OSC Trackersというのは、VRChatやclusterでネットワーク経由で特定のデータを受信すると、あたかもVive Trackerを使ったようなフルトラを可能にする仕組みです。ぶっちゃけ言うとmocopiでVRChatのフルトラしている仕組みです。たぶん。公開されているので他で使っても問題ないはずです。
(以下、私自身がVRChatもclusterもどちらもそれほど詳しくないので、間違えてるかも知れませんが、その際はご指摘ください)

https://www.youtube.com/watch?v=50EutL2GbhU


VRChatでは2022年からOSC(open sound control)をサポートし、Avatar parameterやEye Trackingなど表情や様々なリソースの制御が外部のアプリケーションから可能になりました。OSC TrackersはそのOSC仕組みの中の一つで、外部のアプリケーションからトラッカーの座標や向きの情報をVRChatに対して送信することが可能となりました。

VRChatでは11点のフルトラ(頭、手x2、肘x2、胸、お腹、膝x2、足x2)をサポートしています。VRモードの最小ハードウエアの構成はHMDと左右のコントローラの3つになりますが、残りの8個のトラッカーを仮想のデバイスとして座標値等のデータを送信すると11点フルトラが可能になるというのがOSC Trackersという仕組みです。
clusterも同様の仕組みをサポートし、6点フルトラ(頭、手x2、お腹、足x2)をサポートしています。

VRChatのOSC Trackersの説明

clusterのOSC Trackersの説明

https://help.cluster.mu/hc/ja/articles/16937773108377-OSC-Trackers-%E3%81%AE%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95

TDPTの設定

今回はそんなOSC TrackersのデータをTDPT iOS版 Ver.1.3から直接送信できるようにしてみました。TDPTというのは、iPhoneのカメラに全身を写す事でリアルタイムに簡単にモーションキャプチャーができるアプリケーションです。詳しくは下記のリンクを参照ください。
PC版もありますが、OSC Trackersは次のバージョンで実装予定です。

TDPTのモーキャプデータを直接OSC TrackersでVRChatやclusterに送るので他の機器は必要ありません(今回はVR用なので、VR機器とネットワーク機器は必要ですが)。
同一ネットワークであればPC版でもQuest2版でもVRChat、clusterに接続できます(セキュリティの確認は必要です)。
iPhoneはカメラが自分のおへそ位の高さになるように三脚に立てて、アップル製計測アプリ等で垂直水平を出すようにします。カメラが傾いていると、常に微妙に傾いた姿勢になってしまいます。

計測アプリ

この状態でTDPTを起動します。
まずは、Inカメを使用する場合にはカメラ入力の左右反転が必要なので、Settingメニューをチェックしましょう。Mirror modeにチェックが入っていればOKです。外カメを使用する場合や左右逆に動かしたいときはチェックなしでもいいです。
Use microphoneはリップシンク用のマイク設定ですので、OSC Tracker使用時は必要ないでしょうからオフにしましょう。Show input imageは背景に表示されているカメラの入力画像です。慣れてきたら非表示でも構いません。ほとんど影響ない程度ですが微妙に処理が軽くなるとは思います。

Settingメニュー

TDPTのOSC Trackersの設定はプレミアムメニューの中にあります。課金メニューですが、すでに課金済みの方は追加の費用はかかりません。これから購入する方も買い切りですのでこの機会に是非。

TDPTの設定

まず、Using OSC Trackersにチェックを入れます。次に、接続する対象のPC、Quest2(Wifiの設定から接続してる機器を選び詳細で出てきます)のIPを調べTDPTのIPアドレスの項目に設定します。普通は”192.168.”で始まるアドレスのはずです。Portの9000は変更する必要はないはずです。VRChatもclusterも9000番の指定です。
Offsetはアバターの送信するアバターの位置を調整できますが、これも0固定でいいです。Scaleはアバターと自分の身長比になります。男性なら1.25から1.4くらい。女性なら1.2くらいな感じですが、まだ意図した感じでなく良くわかりません。いろいろ試してみてください。できればTDPTとVRChatと同じアバターが良いと思います(下の動画は変更し忘れ)。
11P/6Pは11点トラッキング用か6点トラッキング用かになります。VRChatは11点、6点の両方をサポートし、clusterは6点トラッキングになります。clusterに11点のデータを送り付けても問題ないようですが、ネットワークに負荷がかかるだけですのでclusterでは6Pを選びましょう。
Bundle Modeは、1フレームのデータを送信する際にまとめて送信する事で通信時の負荷を少し下げれます。受信側がサポートしている必要がありますが、VRChat、Clusterともサポートしているのでチェックを付けておいて良いでしょう。
Hide Avatarは送信中にアバターを非表示にしiPhoneの表示の負荷を軽減します。アバターの代わりにスケルトンが表示されます。お持ちのiPhoneのスペックに応じて切り替えてください(軽減といっても気持ち程度です。更に負荷を下げたい場合はSettingメニューのfpsの項目の値を下げてください。SE2やiPhone11は20fps以下の方が良いと思います)。
StartをタップするとOSC Trackersの送信を開始します。

Hide Avatar

SteamVRもしくはQuest2のセンターの軸上にiPhoneを置くようにし、VR内のセンターに立った時にカメラの真ん中に自分が写るようにします。要はiPhoneと正対します(まあ、少々適当でも問題ないと思います)。OSC Trackersではアバターの前後左右の動きはHMDとコントローラに任せる為、TDPTからの距離はあまり気にする必要はありません。TDPTは全身がカメラに写ってないとひどい事になりますので、距離は十分に取ってください。キャリブレーションの際には、iPhoneと正対し肩幅くらい足を開いてキャリブレーションするようにしてください。上記の動画ように鏡に映してる場合はあまり鏡を意識せずiPhoneに向かってTポーズするほうが良い感じです。

VRChatでの設定

VRChatでOSCを有効にするのは、アクションメニューからoptions→OSC→EnabledでOKです。

OSCの設定

oscが受信できていればQuick ActionのメニューがSit/StandからCalibrate FBTに変わります。

Quick Actionメニュー

あとはTポーズしてキャリブレーションするだけです(左右のコントローラを同時にクリック)。

キャリブレーション

clusterでの設定

clusterでの設定も基本mocopiと同じです。上のリンクを見てもらうとほぼわかりますが一応説明します。

clusterでの設定

clusterを起動してOSC Trackersを受信しているとOSC Trackersの項目がオレンジの印と共に接続中となります。この状態で全身トラッキング、トラッキング6点を選択し、前へならえのキャリブレーションをするだけです。簡単。

番外編

Apple siliconを搭載したMac、所謂M1 Mac以降ですが、これらのMacにはiOSアプリがインストール可能です。TDPTもM1 Mac上で起動する事は確認していましたが、(Unityの)テキストボックスをタップしてもどうやってもキー入力を受け付けてくれませんでした(やり方知ってる人がおられたら教えてください)。つまりプレミアムメニューのIP等を設定する事ができません。そこで今回のリリースバージョン(Ver.1.3)から、外部ファイルを読み込んで設定ができるように対応しました(とりあえずの対応です)。
AppStoreからMacにTDPTをインストールすると、
/Users/ユーザ名/Library/Containers/TDPT/Data/Documents/
というフォルダが出来ているはずです。このDocumentsフォルダに、下記のような内容で、premium.txtというテキストファイルを作成してください。

premium.txtの保存先
192.168.0.0
39539
192.168.0.0
9000
0.00
0.00
0.00
1.30

上からそのままプレミアムメニューのテキストボックスの並びになります。192.168.0.0の箇所がIPアドレスになりますので、目的のIPに変更してください。TDPTの起動時にこのファイルを読込みますので、内容を変更した際はアプリを再起動してください。
一応M1 Macでの通信は確認していますが、Macを正式にサポートしている訳ではありません。ご了承ください。

この記事が気に入ったらサポートをしてみませんか?