Unity3D——学习分享(五)常用的系统函数

世间万物都有其规律和秩序,同样在Unity3D中调用系统函数也是有它的顺序的。

下面是在Unity3D中比较常见的系统函数和一般调用的顺序:

调用顺序 函数名
1 void Awake()
2 void Start()
3 void Update()
4 void Fixedupdate()
5 void Lateupdate()
6 void OnGUI()
7 void Reset()
8 void OnDisable()
9 void OnDestroy()





void Awake(){
}

1.Awake()是用来在游戏开始前初始化游戏中的变量和游戏状态的,自身的脚本在整个生命周期只被调用一次,它是在所有的游戏对象被初始化之后调用。



void  Start() {
}

2.Start()在Update函数第一次被调用之前调用。在它的生命周期同样只被调用一次。总是在Awake()之后调用。Awake()和Start()的主要区别是:Start()只在脚本实例被激活时调用,你可以在一定的情况下适当地调整延迟初始化代码。




void Update(){
} //更新

 void Fixedupdate(){
 }//固定更新
 
 void Lateupdate(){
 }//晚于更新

这三个函数比较类似,都是每一帧都被调用,都是用来更新的。

3.Update()每一帧的时间不固定,假设第一帧与第二帧的时间为T1,第三帧与第四帧的时间为T2,那么T1与T2不一定相等。Update()受当前渲染的物体影响(比如游戏对象的数量等),有时快有时慢,帧率是不固定的。

4.FixedUpdate()每帧与每帧之前的时间间隔是固定的,不受渲染物体和帧率的影响,它是以固定的时间间隔被调用。一般用于多对一些物理属性的更新操作。

5.LateUpdate()是在所有Update函数调用后被调用。一般用于调整脚本的执行顺序。比如在Update()函数里更新主角的移动,就可以在LateUpdate()函数里更新跟随主角的摄相机的移动。




void OnGUI() {
}

6.OnGUI() 是在渲染和处理GUI事件时被调用。例如添加Button、Label、滑动条等会被使用,同样每帧执行一次。



 void Reset(){
}

7.Reset()函数是在检视视图中的Reset重置按钮或者第一次添加该组件时被调用的,该函数只在编辑模式下被调用。一般用于在检视视图中给定一个常用的默认值。



void OnDisable() {
}
void OnDestroy(){
}

8.OnDisable()函数是在游戏物体被销毁时以及脚本被卸载时被调用,常用于清理代码。

9.OnDestroy()只会在预先被激活的游戏对象上被调用。常用于游戏物体的销毁。它们都不能用于协同程序。

这节就分享到这里。

猜你喜欢

转载自blog.csdn.net/weixin_43159569/article/details/84553219
今日推荐