我发现将父级设置为true时,该父级的子级都称为“ OnEnable”函数。即使孩子们已经全部设置为真。
即使设置为true,我也不想调用“ OnEnable”功能。
如何预防?
答案 0 :(得分:2)
SetActive()行为。为了解决您的问题,您很可能必须重组GameObject层次结构。
答案 1 :(得分:2)
This documentation on execution order对您可能有用。
如果您不希望从设置为活动的父对象调用子对象中的逻辑,则可以将其从OnEnable
中删除,然后将其连接到其他地方的自己的委托中。
Start
和Awake
函数也将发生相同的事情。我个人会尝试找到一种方法来抽象一些代码,以确保子对象不依赖于父对象。