unity生命周期

unity的生命周期

都是有序的

1. 实例化与初始化阶段

Awake()

调用时机:当脚本实例被载入时调用,在场景加载时,每个对象的脚本实例创建后立即执行,无论脚本是否启用 。

用途:常用于进行基本的初始化操作,如变量赋值、查找组件引用等,因为此时所有对象的脚本实例都已创建,适合建立对象间的初始关联。

OnEnable()

调用时机:在对象被启用或者脚本被激活时调用 。如果对象在场景加载时就处于启用状态,会在 Awake 之后立即调用;若对象在运行时被禁用后又重新启用 ,此方法也会再次被调用。

用途:适合执行需要在对象启用时进行的操作,例如重置状态、订阅事件等。

2. 开始与更新阶段

Start()

调用时机:仅在脚本实例启用后的第一帧调用,且只会调用一次,在 Awake 和 OnEnable 之后执行 。

用途:常用于那些依赖于其他对象初始化完成的操作,因为此时场景中所有对象的 Awake 和 OnEnable 方法都已执行完毕。

FixedUpdate()

调用时机:以固定的时间间隔被调用,其调用频率由 Time.fixedDeltaTime 决定,默认值为 0.02 秒(即每秒 50 次)。它与帧率无关,适合进行物理模拟相关的操作。

用途:常用于处理物理计算,如刚体的移动、力的施加等,确保物理模拟的稳定性。

Update()

调用时机:每帧调用一次,其调用频率取决于游戏的帧率。帧率越高,Update 方法被调用的次数就越多。

用途:用于处理游戏中的常规逻辑,如玩家输入处理、对象的移动和旋转等。

LateUpdate()

调用时机:在 Update 方法调用之后的每帧调用。这意味着它会在所有 Update 方法执行完毕后才执行。

用途:常用于处理那些依赖于 Update 中对象状态变化的操作,例如相机跟随玩家角色,确保相机在玩家移动后再进行位置更新。

3. 渲染阶段

OnPreCull()

调用时机:在相机剔除场景中的对象之前调用。剔除 是指相机决定哪些对象在视野范围内,哪些对象不在视野范围内的过程 。

用途:可用于在相机剔除对象之前对场景进行一些预处理,如动态调整对象的渲染状态。

OnBecameVisible() 和 OnBecameInvisible()

调用时机:当对象对任何相机变得可见或不可见时分别调用。

用途:可以用于优化性能,例如当对象不可见时停止某些不必要的计算或动画。

OnWillRenderObject()

调用时机:当对象即将被渲染时,也就是在经过相机剔除确定对象处于视野范围内(不包括被Setactive.false的对象 ),且即将开始对该对象进行实际渲染操作之前,OnWillRenderObject() 会被调用。每个相机渲染该对象时都会触发此方法 ,可用于在对象渲染前进行特殊的渲染设置或效果处理。

用途:可用于在对象渲染前进行一些特殊的渲染设置或效果处理。

OnRenderObject()

调用时机:在所有常规渲染完成后调用,允许手动渲染自定义的图形或效果。

用途:用于实现自定义的渲染逻辑,如绘制额外的线条、图形等。

OnPostRender()

调用时机:在相机完成渲染后调用 。

用途:可用于在相机渲染完成后进行一些后处理操作,如添加屏幕特效。

4. 销毁阶段

OnDisable()

调用时机:当对象被禁用或者脚本被停用(如脚本组件被取消勾选)时调用。

用途:常用于执行一些清理操作,如取消订阅事件、释放资源等。

OnDestroy()

调用时机:当脚本实例即将被销毁时调用,例如当对象被删除或场景被卸载时。

用途:用于进行最后的清理工作,确保释放所有占用的资源

相关推荐
机建狂魔21 小时前
徕卡一瞬小米相机预设包导入教程:全机型通用指南
数码相机
墨天梦1 天前
B13_通知图片相机与影音
android·数码相机·kotlin
m0_738185821 天前
Flutter 鸿蒙化实战:qrcode_flutter 适配 OpenHarmony,二维码生成与识别
数码相机·flutter·华为·harmonyos·鸿蒙
m0_738185821 天前
Flutter 鸿蒙化实战:qr_code_scanner 适配 OpenHarmony,相机扫码实时识别
数码相机·flutter·华为·harmonyos·鸿蒙
辻弋2011 天前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
段一凡-华北理工大学2 天前
高炉炼铁机器视觉与智能识别十八讲~系列文章06:铁口与出铁场:出铁状态识别与渣铁分离判断
人工智能·数码相机·计算机视觉·高炉出铁识别·高炉渣铁分离·高炉铁口识别
Martina_03212 天前
AI生成3D场景导入 Unity/Unreal 后,NPC 总串层?用6步检查导航高度与跨层连接
人工智能·游戏·数学建模·3d·unity·自然语言处理·aigc
黑妹天下第一乖2 天前
第 12 讲:阿加犀 AidLux 部署与量产——把端侧 AI 应用做成 7×24 产品
人工智能·嵌入式硬件·数码相机·接口隔离原则·iot
高升说2 天前
BEV环视硬件搭建全解析:机位、视场、链路与同步的工程方法
人工智能·数码相机
小贺儿开发2 天前
Unity 局域网遥控幻灯片展示工具 3.0
科技·http·unity·工具·ppt·通信·网页