見出し画像

フルトラで膝を伸ばして座りたい

フルトラしたけどアバターの脚が伸びずに膝が曲がってしまう…‼︎そんな症状にお困りの方に向けた記事です。Quest2 + HaritoraX 環境での対処法ですが、Uni-MotionやVIVEトラッカーなど他の環境でも使えるようです。
2022.08.14追記
VIVEトラッカーでもアバターの体型との相性で同様の問題が発生し、同様の対処法が有効なようです。そのためタイトルを「HaritoraXで膝を伸ばして座りたい」から「フルトラで膝を伸ばして座りたい」に変更し、記事内容も修正しました。

VRC用アバターはさまざまな体型のものがありますが、俗に言うフルトラ適正というものがあります。
私のメインアバターはいのりんのお店さんのTETRAちゃんなのですが、すらっと脚が長くスタイルの良い体型をしています。そのせいか、フルトラをしても脚を伸ばして座っても膝がまっすぐ伸びません。今回はこれを解決します。

解決法1 「あなたの身長」を下げる方法

Haritora公式の説明書を読んでみると、なにやらヒントがあります。
Haritora側の身長設定を下げるハックがあるようです。マニュアルでは身長を調整するとしか書いてありませんが、VRC内のUser Real HeightとHaritora Configuratorの「あなたの身長」設定を下げていくと良いようです。

HaritoraX公式マニュアル
User Real Height
 Haritora configurator あなたの身長

Haritora Configurator内の身長設定である「あなたの身長」を下げるほどTポーズキャリブレーション時の白い球の位置が上がっていき、膝が伸びるようになります。
この時の私の設定は、
実身長: 158cm
User Real Height: 1.57m
あなたの身長: 113cm
です。

白い球がすねの位置に来ている

しかし欠点もあり、この方法だと白い球の位置が足先だと認識されてしまうため、腕で足を掴んでみると画像のようにアバターはすねをつかんでしまいます。また、体操座りをしてみると、足が地面に埋まってしまいます。

リアルでは足先をつかんでいるがアバターはすねをつかむ
座ると足が埋まる

また、Haritora側の設定をいじるため、他のアバターに着替えたときはデスクトップ画面でHaritora Configuratorの身長設定を変更→再キャリブレーションという手順を踏まないとフィット感が下がる可能性があります。複数アバターを良く着替える人には不向きですね。
Haritoraの実験機能である足首検知機能も使えません。

解決法2 「User Real Height」を下げる方法

こちらがオススメの方法です。キャリブレーション後にVRC内のUser Real Heightを下げます。こちらはVIVEトラッカー環境などでも使えるようで、おそらくトラッキングシステムに関わらず利用可能と思われます。この方法では、TポーズキャリブレーションをするたびにUse Real Heightの調整が必要になりますが、Haritora側の設定はいじる必要がありません。結果、キャリブレ時の白い球もしっかり足首あたりに来ているため、Haritoraの足首検知機能が使えます。ただし、この方法を使う場合は Avatar Measurementをarm-based(腕の長さ基準)にする必要があります。IK 2.0で追加されたheight-based(身長基準)でUser Real Heightを下げても上手くいきません。

Avatar Measurement
膝が伸びている。足首検知も機能している
白い球は足首の位置

以前のIKでは、アバターを変えるたびにTポーズキャリブレーションが必要でしたが、2022年6月現在、IK 2.0アップデートによりアバターを変えても再キャリブレーションが不要になりました。そのため、頭身の違うアバターに切り替えても、VRC内でUser Real Heightを調整することで複数アバターにフィットさせられます。欠点としては、Avatar Measurementを腕の長さ基準にする必要があるため、アバターとの相性によっては肘が伸びなくなる可能性があります。私とTETRAちゃんの場合は、ややシビアですが腕をピンと伸ばせばアバターの肘も伸びてくれるので許容範囲といったところでしょうか。

肘は一応伸びる

参考までに私の設定値は
実身長: 158cm
User Real Height: 1.60m→1.42m
あなたの身長: 158cm
です。
再キャリブレーションする場合は
一旦User Real Heightを元の値まで上げる→キャリブレーション→User Real Height を下げる
という手順になります。

正直User Real Heightなどのパラメータが具体的にどう作用しているのか、なんでこれで直るのか、あんまり理解できていませんがとりあえず直ってるからヨシ!
参考になったらスキでも押してくれると私が喜びます。また、何か質問や記事の感想などありましたらお気軽にコメントないしツイッターまでどうぞ。@Healsiohaiizo
それでは。


VRChat関連の技術的な情報などを書いています。「スキ❤️」や「フォロー」していただくとモチベになります。「サポート」していただいたら私が美味しいものを食べます。