private void Update(){
//对象有一个state的布尔值;
Instantiate(对象);
//输出结果为false
print(对象.lifeState );
}
class 对象{
bool lifestate;
void start()
{
lifeState = true;
}
}
该问题出现在Instantiate对象时不会调用start,unity会处理完上一帧的所有update后再调用start
将start改为awake,正常
unity 初始化GameObject字段 关于start的坑
最新推荐文章于 2023-08-25 11:05:46 发布
本文详细介绍了Unity引擎中Start与Awake方法的调用区别。当使用Instantiate创建对象时,Start方法不会立即执行,而是在当前帧更新完毕后调用。将Start改为Awake可以确保在对象实例化时立即执行,解决了问题。
摘要由CSDN通过智能技术生成