Reset函数是unity 提供的一个重置功能的函数,该方法只能在编辑模式下使用,如果你的游戏在编辑器里面已经运行了,该方法是不会被调用的(所以Debug.log之类的常用测试方法方法在Reset函数里面调用是无效的)
游戏运行以后,该函数不会被调用
只有在编辑模式下该函数才有效果
废话不多说我们上测试代码,首先编写一个测试类
public class Demo : MonoBehaviour
{
// 代码功能很简单,遍历GameObject的子物体并且修改他们的名字
private void Reset()
{
int count = transform.childCount;
for (int index = 0; index < count; index++)
{
transform.GetChild(index).name = (index + 1).ToString();
}
}
}
当我们在编辑模式下,第一次给物体添加脚本或者手动点击reset脚本以后,可以看到,我们的代码被执行了
如果游戏已经运行,再次点击reset,可以看到我们的代码并没有被执行