unityでRigidbodyを追加したら、アニメーションの回転が鈍くなった問題が解決したのでメモ

Unity

昨日やったやつの続きね。

unityのアニメーションクリップのbake into poseについてのメモ
アニメーションクリップ設定で、bake into pose(ポーズにベイク)にチェックを入れると、ルート移動や回転が反映「されない」 これ、逆に反映「される」だと勘違いしていた( ̄▽ ̄;) 参考にした頭のいい先輩のページ。 ...

 

前回は、90度ターンするアニメーションのはずだったのに、Rigidbodyを追加した途端、20度くらいしかターンしなくなっちゃった。

この問題が一応解決したのでメモ。

Rigidbodyのinterpolate(補間)機能を使ったら回転がいい感じになった

設定したのはここ。

英語だとinterpolateっていうらしい。

unity公式マニュアルによると、前フレームか次フレームを見て動きを補間してくれる機能で、動きがぎこちない時に使うと改善する可能性があるらしい。

Rigidbody - Unity マニュアル
Rigidbody を使うと、ゲームオブジェクト を物理特性によって制御する事ができるようになります。リジッドボディに力やトルクを加えると、オブジェクトをリアリスティックに動かすことができます。重力の影響を加えたり、スクリプトを使って力を与えたり、NVIDIA PhysX 物理エンジンを通して他のオブジェクトと相互作用...

補間(interpolate)より、外挿(Extrapolate)のほうがいい感じになったかも。

このあたりは実際に動き見ながらやったほうがいいかな。

ただ、ちょっと処理が重いらしい?

壁にぶつかったら宙に浮いたり転がったりする不具合が(笑)

壁にぶつかったら、越後屋の帯回しのように回転しまくる不具合も出た(笑)。

 

これはRigidbodyのConstraintsで、回転と位置をチェックして制限すればいけるかな。

回転をすべて制限、位置はY軸だけ制限したらいい感じに。

Y軸の位置を使うと、コライダーに当たった時にフワーっと上がっていって天に召されてしまったことがあったので、基本は使わない方がいいかな?

 

とりあえず今のところ不具合はなさそう。

しばらくこれでやってみます。

 

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