【发布时间】:2016-08-25 03:15:40
【问题描述】:
在这里,我使用 SetActive(true) 来启用我的游戏对象,但它不起作用。我尝试使用各种可以启用我的 gameObj 的函数和对象,如代码所示。但没有任何工作。虽然当我设置 setActive(false) 时,它可以工作,但这不是 setActive(true) 的情况。我不知道原因。任何人都可以帮助我吗?顺便说一句,我使用的是 Unity 4.3.4 版本。
if (paddle.life == 1) {
GameObject life_2 = GameObject.Find ("life2");
GameObject lost = GameObject.Find("lostlife");
life_2.SetActive (false);
lost.SetActive(true);
//lost.active = true;
//lost.renderer.enabled = true;(why null ref)
//after some secs disable the message
//Destroy(lost, 4);
}
【问题讨论】:
-
定义“不工作”——实际发生了什么?
-
尝试调试您的代码。使用断点可能。你的代码逻辑一定有问题。
-
调用 set active 只会将 localActive 标志设置为您在函数中提供的值。如果父游戏对象被停用,则所有子对象都不会激活