unity脚步的生命周期

  • 1 下面这些方法可以在编辑器中显示
  • 2 初始阶段
  • 1 Awake()
  • 2 Start()
  • 3 OnEnable()
  • 4 总结
  • 3 物理阶段
  • 1 FixedUpdate()
  • 2 Update()
  • 3 LateUpdate()
  • 4 输入事件
  • 5 场景渲染
  • 6 结束阶段


1 下面这些方法可以在编辑器中显示

unity 3d joystick pack使用用法_执行顺序


unity 3d joystick pack使用用法_构造函数_02


脚步中要写的代码如下:

脚本中不写构造函数,脚步中只写字段和方法。

2 初始阶段

1 Awake()

游戏物体创建,立即执行。早于start()

unity 3d joystick pack使用用法_参考资料_03

2 Start()

awake 在前面执行,start()在后面执行

执行时机:创建游戏对象,脚步启用,才执行

unity 3d joystick pack使用用法_构造函数_04


unity 3d joystick pack使用用法_构造函数_05


一个脚步挂在多个物体上时候的执行顺序:先执行一遍awake(),例子如下:

unity 3d joystick pack使用用法_构造函数_06


unity 3d joystick pack使用用法_执行顺序_07

3 OnEnable()

unity 3d joystick pack使用用法_参考资料_08


就执行一次

4 总结

功能:初始化。做以前构造函数的功能

unity 3d joystick pack使用用法_参考资料_09


unity 3d joystick pack使用用法_参考资料_10


那我在做的时候,就可以使用awake来判断是否启用我的jump脚步了,通过this.enable=true来实现

3 物理阶段

1 FixedUpdate()

做物理操作,没隔固定的时间执行1次。

unity 3d joystick pack使用用法_执行顺序_11


unity 3d joystick pack使用用法_参考资料_12


unity 3d joystick pack使用用法_构造函数_13

2 Update()

执行时机:渲染帧执行,执行间隔不固定
适用性:处理游戏逻辑

通常把移动的代码也放在了Update()中,但是这样移动的话会不固定。

unity 3d joystick pack使用用法_构造函数_14


unity 3d joystick pack使用用法_参考资料_15

3 LateUpdate()

在和update同一帧中,但是先执行update中的,在执行lateupdate

unity 3d joystick pack使用用法_执行顺序_16

4 输入事件

unity 3d joystick pack使用用法_构造函数_17

5 场景渲染

unity 3d joystick pack使用用法_执行顺序_18

6 结束阶段

unity 3d joystick pack使用用法_构造函数_19

后续的开发请在下面这个文档中找:

unity 3d joystick pack使用用法_构造函数_20


unity 3d joystick pack使用用法_参考资料_21


最好用英文的:https://docs.unity3d.com/2017.4/Documentation/ScriptReference/30_search.html?q=mono 参考资料:

https://www.bilibili.com/video/BV12s411g7gU?p=115