• unity3d 脚本周期函数


    1,编辑器阶段

    • Reset方法:当脚本第一次添加到游戏对象或执行Reset命令时会调用Reset方法,常用来初始化脚本的各个属性;

    2,场景第一次加载阶段

    • Awake方法:在Start方法之前调用;
    • OnEnable方法:这个函数在对象可用之后被调用,注意点,仅在对象激活状态下可以使用;

    3,第一帧更新之前的阶段[Awake之后,Update之前]

    • Start方法 

    以上三个方法,即Awake,OnEnable,Start完成了一个unity脚本的初始化工作。

    4,执行阶段:是当前帧执行完毕,需要执行下一帧的阶段。在该阶段,可能被出发的事件是OnApplicationPause方法。

    • OnApplicationPause:当检测到暂停状态,会在当前帧结束后调用

    5,更新顺序 脚本更新的逻辑在三个定义的更新方法中实现,分别是Update,FixUpdate,LateUpdate....

    •   FixUpdate:当帧频率比较低的时候,该方法会被调用多次。该方法是基于可靠的定时器,不受帧率的影响。也因此,FixUpdate()方法主要用来处理物理计算的相关逻辑,例如处理刚体;
    • Update:在游戏运行期间,每一帧都会调用该函数,也是游戏逻辑按帧更新的主要方法。
    • LateUpdate:在Update执行后,也是每帧都会被调用。常见应用就是第三人称控制器的象机跟随。这确保了摄像机追踪角色位置之前,确保人物已经完成移动。通俗讲,在Update方法后,但在摄像机渲染之前的逻辑。

     6,协程部分 

     

      

    7,渲染部分 

     

    OnPostRender:在相机完成场景的渲染后被调用;

    8,游戏对象销毁阶段

      主要是OnDestroy方法。该方法在所有帧更新之后被调用,在对象存在的最后一帧(对象将销毁来相应Object.Destroy或关闭一个场景)。

    9,游戏场景退出阶段 OnApplication在应用退出当前游戏场景前未被销毁或禁用前提下。

    总结:

    关于脚本的结构,有一个大致的执行顺序:

    (1)调用所有的Awake方法。

    (2)调用所有的Start方法。

  • 相关阅读:
    poj2192
    poj2002
    poj2190
    poj2001
    poj2195
    自我成长:20岁到40岁的简单人生规划
    最容易让人失恋的十种职业
    职场发展的5W问题(对我影响很大)
    你个人知识管理了吗?
    安慰人的10大原则——当不知该说什么时
  • 原文地址:https://www.cnblogs.com/allyh/p/9367793.html
Copyright © 2020-2023  润新知