Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity OnCollisionCenter与刚体的子碰撞器_C#_Unity3d - Fatal编程技术网

C# Unity OnCollisionCenter与刚体的子碰撞器

C# Unity OnCollisionCenter与刚体的子碰撞器,c#,unity3d,C#,Unity3d,我试图只让碰撞在直接联系玩家(带刚体的家长)时继续;忽略与孩子的碰撞(一把剑)。 剑被标记为武器,玩家与玩家在一起 我已经搜索过了,但找不到充分的答案(C) 这快把我逼疯了,我需要睡觉,请帮帮我 编辑-我用一个叫做ContactPoint的简单东西解决了这个问题。otherCollider问题可能是你如何检查标签。 我通常像这样直接抓取游戏对象的标签 void OnCollisionEnter(Collision col){ if (col.gameObject.tag == "Play

我试图只让碰撞在直接联系玩家(带刚体的家长)时继续;忽略与孩子的碰撞(一把剑)。 剑被标记为武器,玩家与玩家在一起

我已经搜索过了,但找不到充分的答案(C)

这快把我逼疯了,我需要睡觉,请帮帮我


编辑-我用一个叫做ContactPoint的简单东西解决了这个问题。otherCollider

问题可能是你如何检查标签。 我通常像这样直接抓取游戏对象的标签

void OnCollisionEnter(Collision col){
    if (col.gameObject.tag == "Player"){
        //stuff happens
    }
}
甚至是对撞机的标签

(col.tag === "player")

以防其他人对此感到困惑,而OP的编辑过于模糊

您可以使用collision.contacts查看在调用脚本的游戏对象上命中的碰撞器:

foreach (ContactPoint c in collision.contacts)
{
        Debug.Log(c.thisCollider.name);
}
foreach (ContactPoint c in collision.contacts)
{
        Debug.Log(c.thisCollider.name);
}