一、
OnCollisionEnter(Collision collision):這個(gè)函數(shù)用于檢測(cè)兩個(gè)物體之間的碰撞事件,當(dāng)兩個(gè)物體發(fā)生碰撞時(shí)被調(diào)用。其中,參數(shù)collision包含了碰撞的詳細(xì)信息,例如碰撞點(diǎn)、碰撞法線等等。
二、
OnCollisionStay(Collision collision):這個(gè)函數(shù)用于檢測(cè)兩個(gè)物體之間的持續(xù)碰撞事件,當(dāng)兩個(gè)物體持續(xù)發(fā)生碰撞時(shí)被調(diào)用。其中,參數(shù)collision包含了碰撞的詳細(xì)信息,例如碰撞點(diǎn)、碰撞法線等等。
三、
OnCollisionStay(Collision collision):這個(gè)函數(shù)用于檢測(cè)兩個(gè)物體之間的持續(xù)碰撞事件,當(dāng)兩個(gè)物體持續(xù)發(fā)生碰撞時(shí)被調(diào)用。其中,參數(shù)collision包含了碰撞的詳細(xì)信息,例如碰撞點(diǎn)、碰撞法線等等。
四、
OnTriggerStay(Collider other):這個(gè)函數(shù)用于檢測(cè)一個(gè)物體是否持續(xù)停留在另一個(gè)物體的觸發(fā)器范圍內(nèi),當(dāng)一個(gè)物體持續(xù)停留在另一個(gè)物體的觸發(fā)器內(nèi)時(shí)被調(diào)用。其中,參數(shù)other表示停留在觸發(fā)器內(nèi)的物體。
五、
OnCollisionExit(Collision collision):這個(gè)函數(shù)用于檢測(cè)兩個(gè)物體之間的碰撞事件結(jié)束,當(dāng)兩個(gè)物體之間的碰撞結(jié)束時(shí)被調(diào)用。其中,參數(shù)collision包含了碰撞的詳細(xì)信息,例如碰撞點(diǎn)、碰撞法線等等。文章來源:http://www.zghlxwxcb.cn/news/detail-766985.html
六、
OnTriggerExit(Collider other):這個(gè)函數(shù)用于檢測(cè)一個(gè)物體是否離開了另一個(gè)物體的觸發(fā)器范圍內(nèi),當(dāng)一個(gè)物體離開另一個(gè)物體的觸發(fā)器時(shí)被調(diào)用。其中,參數(shù)other表示離開觸發(fā)器的物體。文章來源地址http://www.zghlxwxcb.cn/news/detail-766985.html
七、 代碼
using UnityEngine;
public class CollisionExample : MonoBehaviour
{
// 碰撞事件,當(dāng)兩個(gè)物體發(fā)生碰撞時(shí)被調(diào)用
void OnCollisionEnter(Collision collision)
{
Debug.Log("碰撞事件:" + collision.gameObject.name);
}
// 觸發(fā)器事件,當(dāng)一個(gè)物體進(jìn)入另一個(gè)物體的觸發(fā)器時(shí)被調(diào)用
void OnTriggerEnter(Collider other)
{
Debug.Log("進(jìn)入觸發(fā)器:" + other.gameObject.name);
}
// 碰撞持續(xù)事件,當(dāng)兩個(gè)物體持續(xù)發(fā)生碰撞時(shí)被調(diào)用
void OnCollisionStay(Collision collision)
{
Debug.Log("碰撞持續(xù)事件:" + collision.gameObject.name);
}
// 觸發(fā)器持續(xù)事件,當(dāng)一個(gè)物體持續(xù)停留在另一個(gè)物體的觸發(fā)器內(nèi)時(shí)被調(diào)用
void OnTriggerStay(Collider other)
{
Debug.Log("觸發(fā)器持續(xù)事件:" + other.gameObject.name);
}
// 碰撞結(jié)束事件,當(dāng)兩個(gè)物體之間的碰撞結(jié)束時(shí)被調(diào)用
void OnCollisionExit(Collision collision)
{
Debug.Log("碰撞結(jié)束事件:" + collision.gameObject.name);
}
// 觸發(fā)器結(jié)束事件,當(dāng)一個(gè)物體離開另一個(gè)物體的觸發(fā)器時(shí)被調(diào)用
void OnTriggerExit(Collider other)
{
Debug.Log("觸發(fā)器結(jié)束事件:" + other.gameObject.name);
}
}
到了這里,關(guān)于unity碰撞檢測(cè)的幾種函數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!