如何仅检测相同颜色的碰撞?

时间:2018-07-17 00:32:14

标签: c# unity3d

我有一个父元素(“ MainSquare”)和4个子元素(“ redCube,blueCube,yellowCube和greenCube”)。

我需要检测下降的“敌人广场”与子元素之间的冲突。

enter image description here

1 个答案:

答案 0 :(得分:2)

  1. 将刚体附着到掉落的敌人身上。清除刚体 重力检查。为敌人的下落位置设置随机X轴, 禁用其他启用Y轴的约束。
  2. 将Box-Collider附加到敌方物体和主要的4个正方形上 单独或通过父级进行配色,但要进行配色 必须将4个对撞机附加到4个对撞机上并进行调整 它们在框对撞机的组件选项卡中缩放和定位 检查员。

执行类似您的方法的代码...

    void OnCollisionEnter(Collision col)
    {
    if(col.gameObject.name.equals("redCube"))
    {
    ............
    ..........
    }
    else if(col.gameObject.name.equals("blueCube"))
    {
    .........
    ........
    }
    ................
    ................
    }

但是从您的角度来看,您还必须设置空间或向下按下任何按钮,以便在Y旋转中旋转父多维数据集以进行类似于敌人的获取检测。 据我了解问题本身,我对任何描述不佳表示抱歉,因为我也是新来的人。