LoginSignup
1
2

More than 3 years have passed since last update.

Unityで物理シミュレーションとイベントハンドラの挙動

Last updated at Posted at 2017-09-15

物理シミュする際、まずやること

  • 物理シミュしたいGameObjectには、**Collider(SphereColliderとかBoxColliderとか)とRigidBodyをつける。
  • 地面はBoxCollider等をつけるだけでよい。
  • 衝突のイベントを拾いたい場合、両方つけないとイベントが来ない気がする。

パラメータ RigidBody.IsKinematic, Collider.IsTrigger

  • RigidBody.IsKinematic=trueは、transformで動かすか、addForce等で動かす。ほかのものに影響を与えるが、自分は受けない。ゲームで動かすプレイヤーなどに使う。
  • Collider.IsTrigger=trueにすると物理挙動が無視される。ただ衝突時OnTriggerEnterが呼ばれるようになる。
  • Collider.isTrigger=trueにしなくても、衝突したらOnCollisionEnterが呼ばれる。ただisKinematic=trueになってると、よばれない。

イベントと物理挙動のまとめ

isKinematic isTrigger OnCollisionEnter OnTriggerEnter 物理挙動
true false くる こない しない(他には影響与える)
true true こない くる しない
false true こない くる しない
false false くる こない する

参考

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2