Unity触发器检测玩家是否完全脱离对撞机

时间:2020-04-11 07:55:37

标签: unity3d

我使用OnTriggerEnter和OnTriggerExit模拟梯子。当我爬上梯子时,一旦玩家对撞机的顶部位于梯子对撞机的外部,则OnTriggerExit就会触发,而普利尔对撞机的赃物仍在其中。向下攀爬时相同,只要玩家对撞机的底部离开梯子对撞机而其余部分仍在里面,OnTriggerExit就会触发。我可以(以及如何)检测对撞机的底部或顶部是否完全在梯形对撞机之外,并且不仅开始爬出来?

1 个答案:

答案 0 :(得分:0)

我们需要更多信息,例如一些代码,或者至少是您的设置的屏幕截图, 但是我认为您可以解决这两种方法:

不要为每个身体部位分别设置触发器,而要创建一个大的触发器。

或者您可以将触发器链接在一起。在这种情况下,每个触发器都应调用父组件,并在onTriggerExit中增加一个整数(int TotalAmountOfCollidersTriggered = 0),以减小此值。然后,当该值为正值时,您知道其中一个对撞机会触发某些事件,而当值为0时,您会知道在任何地方都不会触发对撞机。