facebook twitter hatena line email

Unity/3d/collider/距離

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

サンプル

範囲内に入った際に、ある位置からの距離を測定する。

Unity/3d/collider/貫通 [ショートカット]

上記参考に、一部改変する。

using UnityEngine;
public class SphereTrigger: MonoBehaviour
{
    // 範囲内に入ったとき
    void OnTriggerEnter(Collider collider)
    {
        Debug.Log("OnTriggerEnter");
    }
    // 範囲中のとき
    void OnTriggerStay(Collider collider)
    {
        Debug.Log("OnCollisionStay collision.gameObject.name=" + collider.gameObject.name);
        if (collider.gameObject.name == "CharacterSphere")
        {
            var distance = Vector3.Distance(transform.position, collider.gameObject.transform.position);
            Debug.Log("distance=" + distance);
        }
    }
    // 範囲から抜けたとき
    void OnTriggerExit(Collider collider)
    {
        Debug.Log("OnTriggerExit");
    }
}