リグの要件
このページの情報は大幅に古くなっていますが、大部分は現在でも正確です。
このページでは、アバターのリグ、ボーン、アーマチュアを設定するための要件について説明します。これらの要件に従うことで、VRChat内でアバターの手足が正しく動くようになります。
また、SDKビルドパネルを確認し、「Validations」セクションにエラーが表示されていないかチェックすることもできます。
エクスポート設定
お使いの3Dエディタからリグをエクスポートする際は、座標設定が正しいことを確認してください。多くの場合、デフォルト設定のままで問題ありません。
Blenderを使用する場合は、レスト時のX回転が90度になっていることを確認してください。
Humanoid Rig
Unity の Mecanim で定義された Humanoid の要件を満たしていない場合、Humanoid リグの設定にフラグが立てられます。Unity のアバター設定に関するドキュメントを読み、内容を把握しておいてください。
アバターのリグが Humanoid であるにもかかわらず、必須のボーンがマッピングされていない場合、VRChat Build Control Panel にこのメッセージが表示されます。
アバターが人間から大きくかけ離れている場合(四足歩行、背の曲がったモンスターなど)、Generic リグを使用し、独自の Animation Controller を作成することを検討してください。例として SimpleAvatarController を参照してください。これは Humanoid を作成するよりも高度な作業となるため、Unity の Animation Controller システムに精通している必要があります。
指のマッピング
この警告はSDK3のアバターには表示されません。SDK3では指のボーンがないアーマチュアを使用しても問題ないためです。 このエラーは、現在では非推奨となっており使用すべきではないVRChat SDK2を使用している場合にのみ発生します。
完全なIK(しゃがみ動作や自動的な足の配置を可能にする機能)を利用するには、これら3本の指のボーンをマッピングする必要があります。この警告を無視した場合、アバターはしゃがむことができず、足も自動的に追従しなくなります(コントローラー移動を使用している場合を除く)。
また、ハンドジェスチャーによるカスタムアニメーションの上書きも再生されなくなります(この点は、現在SDK内の警告では言及されていません)。
スパイン(脊椎)階層
この警告はSDK3アバターでは表示されません。SDK3では上胸部がマッピングされたアーマチュアを使用しても問題ないためです。 このエラーは、現在非推奨であり使用すべきではない VRChat SDK2 を使用している場合にのみ発生します。
SDK2を使用しなければならない場合は、Humanoidの設定時に上胸部のボーンを空のままにしてください。
これらのボーンはすべてマッピングされている必要があります。このメッセージが表示された場合は、これらのスロットがいずれも空になっていないことを確認してください。なお、Neck および Chest スロットはMecanimでは任意ですが、VRChatでは必須となります。
IKを正しく動作させるには、胸部周辺のボーン構成を特定の階層にする必要があります。リグ設定において、Shoulderボーン(Left Arm > Shoulder および Right Arm > Shoulder スロットにマッピング)は、Chestボーン(Body > Chest スロットにマッピング)の直下の子である必要があります。また、Neckボーン(Head > Neck スロットにマッピング)も同様に、Chestの直下の子である必要があります。
腕と脚の階層構造
VRChat の IK システムは、ボーンのレイアウトを判断する際、そのボーンの最初の子ボーンを参照します。リグ内に小道具配置用のボーンやツイストボーンなど、他の子ボーンが存在する場合、それらが IK の判断を妨げることがあります。このエラーは、LowerArm が UpperArm ボーンの子リストの先頭に配置されていないことを SDK が検知した場合に発生します。
これを修正するには、該当する子ボーンを親ボーンの子リストの先頭に移動してください。これを行うには、アバターのプレハブを一度展開(Unpack)する必要があります。
なお、このメッセージで示されているのはスロット名であり、リグ内の実際のボーン名ではないため、該当スロットにどのボーンが入っているかを各自で確認してください。
上記の説明を参照してください。
目(Eye)のボーン
アバターの目(Eye)のボーンを次のように設定します。
- Y軸は上を向いていること。
- Z軸は前を向いていること。
一般的な階層構造
一部のリグでは、階層が上半身と下半身の2つのセクションに分割されています。この場合、Body > Hipsスロットに設定するボーンは、マッピングする他のすべてのヒューマノイドボーンの祖先(親、またはそれ以上の階層)である必要があります。このようなリグを扱う際は十分に注意してください!多くの場合、これらのボーンの祖先は地面にあるルートボーンやその他の配置場所となっており、ヒップボーン(腰)としては不適切な位置にあります。こうしたリグの多くはVRChatでの使用に適しておらず、正しく動作させるためにはリギングのやり直しが必要です。
フルトラッキング
フルボディトラッキング(3つのHTC Tracking Puckを使用するなど)を利用する場合には、特別な注意が必要です。フルボディトラッキング使用時にアバターが正常に動作するように、いくつかの推奨事項があります。
フルボディトラッキングのリギング要件に関する詳細については、フルボディトラッキングシステムガイドを参照してください。
フルボディトラッキングは、腰と太ももの骨の間の角度に対して敏感です。この角度は、AvatarTPoseControllerをアバターに適用した状態で測定するのが最適です。理想的には、Tポーズにおいて腰の骨が真上を向き、太ももの骨が真下を向いている状態ですが、多少のズレであれば問題ありません。フルボディトラッキングを使用する予定がない場合は、このメッセージは無視して構いません。
つま先のボーン (Toe Bones)
Humanoidアバターにおいて、つま先のボーンをマッピングすることは必須ではありません。しかし、もしマッピングを行った場合、アバターはつま先立ちで上下に動けるようになります。また、つま先をマッピングすることで、Use Auto Footstepの動作がより自然になり、自動スタンスの基準位置がかかとではなくつま先のボーンの付け根に調整されるため、バランスの見た目も改善されます。
最終更新: