对撞机调用的OnTriggerExit未标记为触发错误Unity

时间:2018-12-26 22:04:30

标签: c# unity3d triggers collider

我有这样的等级制度:
enter image description here
在父级中,我具有以下组件:
enter image description here
名为DropDetector的孩子的对撞机被标记为触发器。而名为drop_area的孩子也有一个对撞机,但这个撞机未被标记为触发器。但是目前虽然没有标记为触发器,但正在从drop_area对撞机调用我的OntriggerEnter和Exit函数。为什么会这样呢?我如何阻止它发生呢?

DropArea脚本和刚体被附加到名为IncrementA_DropArea的父级上。

如果需要更多信息或澄清,请告诉我,以便我澄清!

1 个答案:

答案 0 :(得分:3)

这按预期工作。来自MonoBehaviour.OnTriggerExit(Collider)的统一文档:

  

此消息发送到触发器和触碰触发器的对撞机。

您无法避免在drop_area的{​​{1}}上调用它。

但是,在MonoBehaviour的实现中,您可以首先检查被调用的MonoBehaviour.OnTriggerExit(Collider)的对撞机是否不是触发器,如果​​是,则退出该方法:

MonoBehaviour