Unity 生命周期函数主要有以下一些:
Awake()
: 在脚本被加载时调用。用于初始化对象的状态和引用。OnEnable()
: 在脚本组件被启用时调用。在脚本组件被激活时执行一次,以及在脚本组件被重新激活时执行。Reset()
: 在脚本组件被重置时调用。用于重置脚本的初始状态。Start()
: 在脚本启用时调用。在Awake函数之后被调用,用于初始化游戏对象和组件。FixedUpdate()
: 在固定时间间隔内调用。用于处理物理相关的计算,例如刚体运动、物理碰撞等。OnTriggerEnter(Collider other)
: 当游戏对象进入触发器时调用。用于处理触发事件。OnTriggerExit(Collider other)
: 当游戏对象离开触发器时调用。OnTriggerStay(Collider other)
: 当游戏对象停留在触发器内时调用。OnCollisionEnter(Collision collision)
: 当游戏对象发生碰撞时调用。用于处理碰撞事件。OnCollisionExit(Collision collision)
: 当游戏对象结束碰撞时调用。OnCollisionStay(Collision collision)
: 当游戏对象持续碰撞时调用。OnMouseEnter()
: 当鼠标进入游戏对象所在区域时调用。用于处理鼠标进入事件。OnMouseOver()
: 当鼠标在游戏对象上移动时调用。OnMouseExit()
: 当鼠标离开游戏对象所在区域时调用。OnMouseDown()
: 当鼠标按下时调用。OnMouseUp()
: 当鼠标释放时调用。OnMouseUpAsButton()
: 当鼠标释放为按钮点击时调用。OnMouseDrag()
: 当鼠标拖动时调用。Update()
: 在每一帧更新时调用。用于处理游戏逻辑和用户输入。LateUpdate()
: 在所有Update函数执行完毕后调用。用于处理相机跟随和其他需要在Update完成后执行的逻辑。OnPreCull()
: 在相机剔除之前调用。用于在相机剔除前进行一些操作。OnBecameVisible()
: 当游戏对象在相机视野中可见时调用。OnBecameInvisible()
: 当游戏对象在相机视野中不可见时调用。OnWillRenderObject()
: 在渲染对象之前调用。OnPreRender()
: 在相机渲染之前调用。OnRenderObject()
: 在渲染对象时调用。OnPostRender()
: 在相机渲染之后调用。OnRenderImage()
: 在渲染图像时调用。OnDrawGizmos()
: 在编辑器中绘制Gizmos时调用。OnGUI()
: 在绘制GUI时调用。OnApplicationPause()
: 当应用程序暂停时调用。OnApplicationQuit()
: 当应用程序退出时调用。OnDisable()
: 在脚本组件被禁用时调用。OnDestroy()
: 在脚本或游戏对象被销毁时调用。
要是我们要了解Unity的全生命周期,还是得看官方的文档:
Unity - Manual: Order of execution for event functions
下面截了下官方的这个流程图: