【Unity】 MonoBehavior生命周期图示

在Unity中只要运行的脚本都要继承MonoBehavior类,在MoniBehavior中的类执行顺序如下:
请添加图片描述

初始化方法

  • Reset 重置
    • 调用条件:在脚本第一次挂载时调用,在调试模式使用,初始化参数
    • 调用次数:仅一次
    • 常用作用:用于初始化属性,监视面板中的默认值
  • Awake 唤醒
    • 调用条件:在脚本被实例化时调用,仅调用一次,不管脚本设置为enable=true还是false。
    • 调用次数:仅一次
    • 常用作用:类似于构造函数进行初始化
  • OnEnable 启用
    • 调用条件:在脚本被启用后调用
    • 调用次数:每一次重新启用脚本都会调用
    • 常用作用:重复恢复成初始状态
  • Start 开始:
    • 调用条件:脚本第一次设置为enable=true且在Update类函数前调用。
    • 调用次数:仅一次
    • 常用作用:常用于数据或游戏逻辑初始化

更新

  • Update 更新:
    • 调用条件:脚本每一帧都会执行一次,一秒正常60帧,和电脑属性相关。
    • 常用作用:常用于数据更新。
  • FixedUpdate 固定更新:
    • 调用条件:脚本启用后,固定时间被调用,
    • 常用作用:适用于对游戏对象做物理操作,例如移动等。
    • 设置更新频率:”Edit”—>”Project Setting”—>”Time”—>”Fixed Timestep”值,默认为0.02s。
  • LateUpdate 延迟更新:
    • 调用条件:和Update一样,在Update之后调用。
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随

碰撞检测

  • OnTriggerEnter(Collider) 碰撞触发开始:
    • 调用条件:当物体和另一个物体的碰撞体接触时执行(至少拥有一个刚体),只要有一个物体开启isTrigger
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随
  • OnTriggerStay(Collider) 碰撞触发 保持:
    • 调用条件:只要物体和另一个物体的碰撞体接触,每帧都会执行
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随
  • OnTriggerEnd(Collider) 碰撞触发结束:
    • 调用条件:当物体和另一个物体的碰撞体接触结束时执行。
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随
  • OnCollisionEnter(Collision) 碰撞触发开始:
    • 调用条件:当物体和另一个物体的碰撞体接触时执行(至少拥有一个刚体),两个物体都不启用isTrigger
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随
  • OnCollisionStay(Collision) 碰撞触发 保持:
    • 调用条件:只要物体和另一个物体的碰撞体接触,每帧都会执行
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随
  • OnCollisionEnd(Collision) 碰撞触发结束:
    • 调用条件:当物体和另一个物体的碰撞体接触结束时执行。
    • 常用作用:常用于跟踪逻辑,比如第一人称视角跟随

鼠标碰撞检测

  • OnMouseDown
    • 调用条件:当用户在 Collider 上按下鼠标按钮时
    • 常用作用:
  • OnMouseUp
    • 调用条件:当按下鼠标抬起时调用,不管鼠标在不在Collider 上
    • 常用作用:
  • OnMouseUpAsButton
    • 调用条件:松开鼠标时,仅当鼠标在按下时所在的 Collider 上时
    • 常用作用:
  • OnMouseDrag
    • 调用条件:当用户单击 Collider 并仍然按住鼠标时
    • 常用作用:
  • OnMouseEnter
    • 调用条件:当鼠标移入 Collider 时调用
    • 常用作用:
  • OnMouseExit
    • 调用条件:当鼠标移出Collider时调用
    • 常用作用:
  • OnMouseOver
    • 调用条件:当鼠标悬停在 Collider 上时,每帧调用一次。
    • 常用作用:

结束

  • OnDisable 停用:
    • 调用条件:当不可用,对象变为不可用和附属游戏对象非激活状态时调用此函数。与OnEnable()对应。
    • 常用作用:常用于资源清理回收,对象状态重置
  • OnDestroy 销毁:
    • 调用条件:当销毁,当脚本销毁或附属游戏对象被销毁时调用。
    • 常用作用:用于游戏物体的销毁
  • OnApplicatoinQuit 结束:
    • 调用条件:当程序结束,应用退出时调用,一般来保存一些游戏数据。
    • 常用作用:处理游戏退出后的逻辑

猜你喜欢

转载自blog.csdn.net/ainklg/article/details/129760669
今日推荐