「Unity/3d/collider/貫通」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→サンプル) |
|||
行29: | 行29: | ||
} | } | ||
} | } | ||
− | <pre> | + | </pre> |
isTriggerにチェックを付けたときは、イベントも、OnTriggerEnterとなり、つけなかったときの、イベントの、OnCollisionEnterとは違うし、引数の型もCollisionではなく、Colliderなので、注意。 | isTriggerにチェックを付けたときは、イベントも、OnTriggerEnterとなり、つけなかったときの、イベントの、OnCollisionEnterとは違うし、引数の型もCollisionではなく、Colliderなので、注意。 |
2022年4月22日 (金) 15:30時点における最新版
サンプル
床にボールが、触れたときに、色を変える
- 3d/Planeを作成
- 3d/CharacterSphereを作成し、AddComponentで、rigidbodyを追加
- CreateEmptyで、GameObjectを作成し、SphereTriggerとリネームし、AddComponentで、SphereColliderを追加し、isTriggerにチェックをつける
- 以下SphereTrigger.csをSphereTriggerオブジェクトに追加
サンプル
SphereTrigger.cs
public class SphereTrigger: MonoBehaviour { // 範囲内に入ったとき void OnTriggerEnter(Collider collider) { Debug.Log("OnTriggerEnter"); } // 範囲中のとき void OnTriggerStay(Collider collider) { Debug.Log("OnCollisionStay collision.gameObject.name=" + collider.gameObject.name); } // 範囲から抜けたとき void OnTriggerExit(Collider collider) { Debug.Log("OnTriggerExit"); } }
isTriggerにチェックを付けたときは、イベントも、OnTriggerEnterとなり、つけなかったときの、イベントの、OnCollisionEnterとは違うし、引数の型もCollisionではなく、Colliderなので、注意。