VRChat_SDKのエラー「this avatar measures too large」について
ついぞ最近VRChatを初めて、wikiと解説ページを見ながらMMDモデルの導入に成功したけど1点引っかかったので備忘としてメモ。
モデルはwikiに使用許可アバターとして掲載されていた、ふちゃきち様の有子ちゃんのローポリ版モデル。
BlenderでMMDをVRChat用にDecimateとかエクスポートする手順、およびUnityでVRChatにアップロードする手順は以下の記事を参考にした。
先達の皆様、ありがとうございます。
で、上記記事を参考にfbxをエクスポートして、Unityでシェーダとかリップシンクとか設定して、いざBuildしようとした際、掲題のエラーメッセージに遭遇。
そのメッセージのスクショは撮ってなかったので、「this avatar measures too large」以外はうろ覚えだけど
1辺が5m未満である必要が~~とか、(xx, xx, xx )みたいな書き方で「ここの辺がオーバーしてるよ!」みたいなのを教えてくれてた気がする。
キャラクターがそんなに大きいってこと?とも考えたが、VRChatの視点を設定する黒い月(参考記事の表現をリスペクト)の大きさと比較して、特段大きいとも思えない。
よくよくモデルのBodyを見てみると、
こんな感じでキャラクターの下に謎の空間が出来ている。
Blender側のモデルを確認し直してもそんな空間はないはず。どうしてこうなった! と数十分格闘した後、以下の設定の変更で解決した。
左側のHierarchyから[Body]を選択し、右のInspecterのBoundsの設定。
Centerの数値をゼロ!ゼロ!ゼロ!にして、Extentsの数値を変えるとキャラクターのまわりの白い骨組みの箱が伸縮する。
(画像ではY軸のCenterが微妙にゼロじゃないが)
いい感じにキャラの大きさに合わせたらアップロード出来るようになった。
この箱もアバターの一部として大きさにカウントされるようだ。当たり判定的なサムシングだと想像してるけど、Unity触り始めて3日の僕にはなんなのかよくわからない。
それから、他のアバターではこの現象は今の所起きてないので、原因もよくわからない。
ネタばらしをするとエラーメッセージでググったら英語のフォーラムに解決法が書いてあったから解決できただけなんだけど、まぁ日本語で書いといたら誰かの役に立つかもしれないと思ってここに書き記しておく。
以上、宜しくお願い申し上げ奉ります。