modular-avatar
modular-avatar copied to clipboard
衣装のHipsが衣装ルートの子の子(孫)でない場合、衣装がHumanoid設定されていなければSetup Outfitに失敗する
きっかけ: https://misskey.niri.la/notes/9x4qba3biu とそのスレッド
私がこのissueを書いている時点のmainブランチで確認した感じでは、
https://github.com/bdunderscore/modular-avatar/blob/c7df409d7044da538f24a7fb134c9aeb01c518b3/Editor/EasySetupOutfit.cs#L451-L512
の部分の処理において、衣装にAnimatorがあってHumanoidならそこからHipsを取得、Animatorが無いかHumanoidでないなら名前からHipsを探す形になっていると思います。
ただ、その名前でのHips探索が、Heuristic search - usually there'll be root -> Armature -> (single child) Hips.のコメントの通りの範囲になっており、Armatureが2段になっているケースに対応出来ていないようです。
(リンク先のケースでは、<衣装名>/Armature/Armature 1/Hips。他にも何例かは存在しそうです。アバター側が2段になっているケースもあったので…)
環境情報
(上記のようにソースコードは現時点のものを確認しているので、多分1.10系でも起きると思います。) Unity: 2022.3.22f1 VRCSDK: 3.6.1 MA: 1.9.15 アバター: https://armadillon.booth.pm/items/1484117 衣装: https://akainextuko.booth.pm/items/2567494
環境情報を更新しました
bd_さんとお話し:
- もう一段ぐらいは探索範囲を深くしても良いかも
- Hips選択出来るようにする?
- Hips候補が複数見つかったら選択してもらうとか出来ないだろうか
- それよりは、SkinnedMeshRendererが参照してないボーンは候補から除外するとかの機構を追加する方が良さそう