[英]Unity OnCollisionEnter with a collider that is the child of the rigidbody
我試圖僅在直接聯系播放器(具有剛體的父級)時使碰撞繼續; 並忽略與孩子(劍)的碰撞。 劍被標記為武器,玩家被標記為玩家。
我已搜索,但找不到足夠的答案(C#)
void OnCollisionEnter (Collision col){
Debug.Log("boop P" + playerNumber);
if (col.collider.transform.tag == "Player") {
-stuff happens-
}
}
這讓我發瘋,我需要睡覺,請幫助。
編輯-很久以來,我用一個簡單的東西ContactContact.otherCollider解決了它
問題可能出在您如何檢查標簽。 我通常像這樣直接獲取gameObject的標簽。
void OnCollisionEnter(Collision col){
if (col.gameObject.tag == "Player"){
//stuff happens
}
}
甚至是對撞機的標簽。
(col.tag === "player")
萬一其他人為此感到掙扎而OP的編輯太含糊了...
您可以檢查以查看是否有碰撞對象碰撞到GameObject上,該碰撞對象使用沖撞.contacts調用了腳本:
foreach (ContactPoint c in collision.contacts)
{
Debug.Log(c.thisCollider.name);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.