物体が範囲に入ったとき
当たり判定・物理くわしくOnTriggerEnter
プレイヤー以外の物体(コライダー)が、このオブジェクトの範囲に入ったとき。
ほかのコライダーが、このオブジェクトの範囲(Is Trigger をオンにしたコライダー)に入ったときに起きます。物理演算の更新(FixedUpdate)のときに呼ばれる、Unity の物理演算のイベントです。「入ってきた物」は、入ってきた相手のコライダーです。
起きるには、両方にコライダーがあり、少なくとも片方は Is Trigger がオンであることが条件です。さらに、どちらかに Rigidbody が付いている必要があります。Unity の組み合わせ表では、Rigidbody の付いた範囲は、相手がどんなコライダーでも起きます。Rigidbody のない範囲が反応するのは、Rigidbody の付いた物(Is Kinematic がオンでも可)が入ったときだけです。
Unity はこのイベントを、範囲の側と入ってきた側の両方に送るので、範囲を持たない側のトリガーでも起きます。たとえばボールに付けたトリガーでも、ゴールの範囲に入ったことが分かります。
プレイヤーが入ったことを知りたいときは「プレイヤーが範囲に入ったとき」を使います。
公式の説明: OnTriggerEnter(Unity)、OnTriggerExit(Unity)、Interaction between collider types(Unity)
イベントの値
このイベントが持つ値です。アクションの設定で、対象や値として選べます。
| 名前 | 種類 |
|---|---|
| 入ってきた物 | Collider |
カードの例
いつ物体が範囲に入ったとき⋯
何をする
+ 何をするかを追加
Udon では
UdonSharp では、このメソッドになります。
void OnTriggerEnter(Collider other)同じ分類のもの
- プレイヤーがぶつかったとき
- 物体が範囲から出たとき
- プレイヤーが範囲にいる間
- プレイヤーが離れたとき
- プレイヤーが触れている間
- パーティクルがプレイヤーに当たったとき
- キャラクターコントローラーがプレイヤーにぶつかったとき
- 物体が範囲にいる間
- 物体がぶつかったとき
- 物体が離れたとき
- 物体が触れている間
- 2D の物体が範囲に入ったとき
- 2D の物体が範囲から出たとき
- 2D の物体が範囲にいる間
- 2D の物体がぶつかったとき
- 2D の物体が離れたとき
- 2D の物体が触れている間
- キャラクターコントローラーがぶつかったとき
- パーティクルが当たったとき
- パーティクルがトリガーに触れたとき
- ジョイントが外れたとき
- 2D のジョイントが外れたとき
- 親が変わったとき
- 子が増えた・減ったとき