Unityで頭のScaleを変更したアバターに髪型を対応させる方法【Modular Avatar】

VRC

VRChat向けアバターで、頭のScaleを変更している場合、対応髪型を入れても位置が合わないことがあります。

たとえば、

  • 髪が頭から浮く
  • 髪が顔や頭に埋まる
  • PlayモードやBuild時に髪の位置がずれる
  • Unity上では合っているのに、アップロード後に違和感が出る

といったケースです。

この場合、Modular Avatarの Merge Armature にある
「スケールも合わせる」を使うことで改善できる場合があります。

原因:アバター側のボーンScaleと髪型側のボーンScaleが合っていない

改変で頭の大きさを変えているアバターでは、HeadNeck などのボーンScaleが通常と異なることがあります。

髪型側にもArmatureがある場合、通常のMerge Armatureだけでは、髪型側のボーンScaleがアバター側のScaleと一致せず、見た目のズレにつながることがあります。

対処法:Merge Armatureの「スケールも合わせる」をONにする

髪型Prefabをアバターに入れたあと、髪型側に付いている MA Merge Armature を確認します。

設定内にある 「スケールも合わせる」にチェックを入れると、髪型側のボーンのlocal scaleもアバター側に合わせるようになります。

手順

  1. 髪型Prefabをアバター直下に配置する
  2. 髪型側のArmature、または髪型Rootにある Modular Avatar Merge Armature を確認する
  3. Merge先にアバター本体のArmatureが指定されているか確認する
  4. 「スケールも合わせる」にチェックを入れる
  5. 実行を押す

これで、頭Scaleを変更しているアバターでも、髪型が頭のサイズに合わせて調整されます。

髪型の位置を手動で調整した時の悩みの種だったうなじが見えるタイプでもきれいにぴったり調整されます。

頭のScale変更自体は「Scale Adjuster」も便利

頭や体の一部のScaleを調整したい場合は、Transformを直接編集するより、Modular Avatarの Scale Adjuster を使う方法もあります。

Scale Adjusterは、特定ボーンのXYZ Scaleを調整するためのコンポーネントで、回転している子ボーンに問題が出にくいように調整できるものです。

使い分け

やりたいこと使うもの
髪型や衣装をアバターのArmatureに統合したいMerge Armature
頭Scale済みアバターに髪型側のScaleも合わせたいMerge Armature の 「スケールも合わせる」
頭・首・体などのScale自体を調整したいScale Adjuster

注意点

「スケールも合わせる」 は、アバター側のボーンScaleに髪型側を合わせるための設定です。
そのため、髪型自体の位置合わせが大きくズレている場合は、チェックを入れるだけでは完全に直らないこともあります。

また、髪型側のボーン名や階層がアバター側と合っていない場合、Merge Armatureが意図通りに動かないことがあります。

まとめ

頭のScaleを変更しているアバターに髪型を入れてズレる場合は、まず以下を確認します。

  • 髪型側に MA Merge Armature が付いているか
  • Merge先がアバター本体のArmatureになっているか
  • 「スケールも合わせる」 がONになっているか
  • Playモードで見た目が崩れていないか

楽しい改変ライフを!

タイトルとURLをコピーしました