gologiusの巣

プログラミングなどの技術メモです。誰かの役に立てるとうれしいです。

Unity 地面との接触判定

【2018/04/07追記】 ※この方法、OverrapSphereの半径分だけ、空中で判定されちゃうんですよね。 なので、着地判定時にモーション再生するときに、空中で着地してるように見えてしまいますね。 ダメですねこれ

本文

↓このクソみたいな発想後に考えたまともな接触判定方法

Unity 簡単な地面との接触判定 - gologiusの巣

方法

CapsuleColliderの足元でPhysics.OverlapSphere()を使用する→Sphere内のオブジェクトを走査→中に無機物があれば地面に接触している

gist.github.com

実行結果はこちら。注意点としては、使用するCapsuleCollider自体の接触判定が常にあります。

f:id:gologius:20171015124126g:plain