Blenderで作成した車をUnityで動かそうとしたら、はちゃめちゃになった話

はちゃめちゃとはこういうことです…
絵が下手すぎて伝わっているか不安ですが、とにかく、タイヤが外れてしまうんです。
ほんと、苦労しましたが、なんとか原因がわかり解決したので、備忘録としてまとめておきます。

車を上から見た図です、一応

涙ぐましい努力一覧(´;ω;`)ウッ…↓↓↓↓↓


仮説1:車に対するタイヤの大きさが適当でなかった?(はずれ)

Unityでアセット車のタイヤをひとつ、fbxエクスポート(この時、 Binary形式に変換 。じゃないとBlenderにインポートできないみたい)。
そのタイヤに合わせて、車のサイズも調整(比率が同じくらいになるよ車のアセットを参考にした)。

結果1:大きさはそろえたけどだめ。大きさの問題ではないみたい。




仮説2:WheelColliderの大きさが合っていない?(はずれ)


WheelメッシュよりもWheelコライダーを大きめにした

結果2:一見正常。けど、よく見ると、コライダーの回転にメッシュがついてきていない。




仮説3:コライダーとメッシュのトランスフォームポジションが合っていないからおかしい?(はずれ)


結果3:合わせられない。プレイスタートすると、結局外れた位置に戻ってしまう。というかそもそも、スクリプトでメッシュのポジションにコライダーのポジションを代入する処理を書いていたので、同じポジションになるはずでした。そのうえで、同じ位置になっていないということ。




仮説4:メッシュオブジェクトの中心とメッシュ自体の位置が大きくずれている?(大当たり!!)


結果4:大正解! center と pivot が何故かめちゃくちゃずれてた!!!!!
Adust Pivot というパッケージを使って、center と pivot を大体一致させると、正常に動いたああああ!!!!

参考サイト:https://vinsatoo.hatenablog.com/entry/2018/09/17/083145(本当に感謝しております、助かりました、ありがとうございます)


この記事が気に入ったらサポートをしてみませんか?