如何禁用图块地图上单个图块的对撞机?

时间:2019-06-29 18:08:22

标签: unity3d

我目前正在研究自上而下的2D益智游戏。我正在尝试创建一个孔,可以通过将巨石推到顶部来禁用它。我正在使用TilemapCollider将Tilemap用于孔,以检测何时击中它。如果玩家将其击中,则它们会掉入。如果巨石将其击中,则它会填满。

当前逻辑如下:

private void OnTriggerEnter2D(Collider2D other) {
        if (other.tag == "Hole") {
            objectCollider.enabled = false;
            other.enabled = false;
        }
    }

这将禁用巨石(正确)和孔(正确)以及整个图块的对撞机。如何禁用单个瓷砖的对撞机?

1 个答案:

答案 0 :(得分:0)

如果使用网格创建了tilemap,则只需删除网格的该部分即可。 \因为对撞机关心整个网格,所以您唯一可以做的就是删除网格的那一部分或有技巧。如果我认为与您想做的一样,则每当对象被击中时,您都可以在上面做另一个触发器。

因此,当物体再次命中时,它肯定会在命中飞机之前首先命中扳机,因此您可以做任何想做的事。