Unity中几个默认函数辨析

来源:互联网 发布:苏州知行汽车 编辑:程序博客网 时间:2024/06/04 00:12


首先,这张图一定要好好保存好,特别全!!!

reset应该就是Unity上面那个播放键吧。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Awake() 在MonoBehavior创建后就立刻调用;

在脚本实例的整个生命周期中,Awake函数仅执行一次;

如果游戏对象(即gameObject)的初始状态为关闭状态,那么运行程序,Awake函数不会执行;

如果游戏对象的初始状态为开启状态,那么Awake函数会执行;

*值得注意的一点是,Awake函数的执行与否与脚本实例的状态(启用或禁用)并没有关系,而是与脚本实例所绑定的游戏对象的开关状态有关。

如果重新加载场景,那么场景内Awake函数的执行情况重新遵循上述两点。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Start()将在MonoBehavior创建后在该帧Update()第一次执行前被调用;

Start()函数只在脚本实例被启用时才会执行;

Start函数总是在Awake函数之后执行。

如果游戏对象开启了,对象上绑定的脚本实例被禁用了,那么Start函数不会执行。

Start函数只会在脚本实例首次被开启时才会执行。

如果是已经开启过的脚本实例被关闭后再次开启,那么Start函数不会再次执行。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一般开发中都是在Awake函数中获取游戏对象或者脚本实例的信息,然后在Start函数中进行一些获取之后的初始化设置。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Awake、OnEnable、Start,都是游戏开始运行前就调用的方法。

GameObject的Activity为true,脚本的enable为true时,其先后顺序为:Awake、OnEnable、Start;

GameObject的Activity为true,脚本的enable为false时,只运行Awake;

GameObject的Activity为false时,以上都不调用,OnDisable()被调用;

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
OnDestory:物体被删除时调用。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Update:当MonoBehaviour启用时,其Update在每一帧被调用;

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

LateUpdate:当Behaviour启用时,其LateUpdate在每一帧被调用

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

FixedUpdate:这个函数会在每个固定的物理时间片被调用一次.这是放置游戏基本物理行为代码的地方。UPDATE之后调用。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Reset:Reset是在用户点击检视面板的Reset按钮或者首次添加该组件时被调用.此函数只在编辑模式下被调用.Reset最常用于在检视面板中给定一个最常用的默认值.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

OnGui:这个函数会每帧调用好几次(每个事件一次),GUI显示函数只能在OnGui中调用。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

OnBecameVisible:可以使用OnBecameVisible()和OnBecameVisible(),来控制物体的update()函数的执行以减少开销

原创粉丝点击