こんにち花束
寝ても眠いです.
今回はAddForceで慣性なし移動を実現する方法についての備忘録です.
Unity 2019.4.24f1 Personal
参考文献
今回はなし
動機
慣性なしの移動処理を実現したい
↓
AddForceからMovePosition(this.transform.position)にするか
↓
MovePosition(this.transform.position)は瞬間移動なので壁をすり抜ける
↓
じゃあ,どうにかしてAddForceの慣性を消したい
って感じです.
実装
超簡単でRigidbodyの速度を変えるだけ.
比較
通常のAddForce(慣性あり)
慣性がありますね(当たり前).
MovePosition(瞬間移動)
移動量が小さいときは壁ぬけしませんが,大きくなると壁ぬけしますね.
実装したAddForce(慣性なし)
慣性がなく,壁抜けも起きていません.
今のところ,この実装で困ったことにはなっていないのでたぶん大丈夫だと思います(本当か?).
まとめ
簡単な実装でAddForceの慣性を消してみました.
Google検索ではAddForceの慣性をなくす記事はなかなか見つからなかったので,誰かのお役に立てれば幸いです.