アインちゃんをMODOで編集してから、Unityに戻した場合に
VRC上で、一定周期で意図しないシェイプキーが暴発する問題に遭遇して、!?!??ってなってた...

最初はAnimator周りとか、シェイプキーの干渉とかかと思ってたけど、そうではなかった。

調べて行ったら、VRChatのアイトラ仕様とMODOのFBX Exportの仕様が合わさり、その現象を引き起こしていた模様

 

何が問題だったか?

オリジナルのFBXがこういうBlendshapeのソート順であったのに対し

MODOで吐いたFBXではこうなっていたのが原因

 

そもそものVRCでの仕様

VRCのシェイプキー定義順の仕様で、上から順に奨励値が存在していて、それを守らないとアイトラで暴発するらしい

(参考) https://jellyfish-qrage.hatenablog.com/entry/2018/07/25/034610

 

MODOの仕様

 

解決方法

MODOは最後に作ったものが一番上にキーとしてくる仕様。

そのため、干渉を回避するだけなら、最終工程でダミーのシェイプキーを4つ投げ込んでからFBXを吐けばよい。

アイトラ考えるなら、該当のアイトラ用のキーを複製して生成、生成後にリネームとかで。

もっと真面目にやるなら、MODO側のシェイプキーを別ファイルで定義した順に再生成するようなMODOのスクリプトを書いてしまうとよさそう。

補足

既存のモーフ値をコピー => ペーストすると、新しく生成しても上に来ないっぽい...(なぜだ。。

Previous Post Next Post

MODOで吐いたFBXのBlendshapeがVRCで暴発する問題