unity常用的生命周期函数

这篇博客详细介绍了Unity中与渲染相关的生命周期函数,包括OnPreCull、OnBecameVisible/OnBecameInvisible、OnWillRenderObject等。此外,还讨论了在游戏对象可见性变化、自定义渲染、屏幕后处理、GUI事件处理等方面的关键函数。同时,提到了编辑模式下的Reset、Awake、OnEnable、Start、FixedUpdate、OnTriggerXXX、OnCollisionXXX、OnMouseXXX、Update、LateUpdate、OnGUI以及OnDisable和OnDestroy等生命周期函数的用法和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 



渲染

  • OnPreCull: 在相机剔除场景之前调用此函数。相机可见的对象取决于剔除。OnPreCull 函数调用发生在剔除之前。
  • OnBecameVisible/OnBecameInvisible: 在对象对于相机可见/不可见时调用此函数。
  • OnWillRenderObject: 如果对象可见,则为每个相机调用一次此函数。
  • OnPreRender: 在相机开始渲染场景之前调用此函数。
  • OnRenderObject: 在完成所有常规场景渲染后调用此函数。此时,可使用 GL 类或 Graphics.DrawMeshNow 绘制自定义几何图形。
  • OnPostRender: 在相机完成场景渲染后调用此函数。
  • OnRenderImage(仅限专业版): 在完成场景渲染后调用此函数,以便对屏幕图像进行后处理。
  • OnGUI: 在每帧上多次调用此函数,以响应 GUI 事件。程序首先将处理 Layout 和 Repaint 事件,然后再处理每个输入事件的 Layout 和 keyboard/鼠标事件。
  • OnDrawGizmos 用于在场景视图中绘制小图示 (Gizmos),以实
Unity生命周期函数是在继承MonoBehaviour类后才能使用的一些系统定义好的函数。这些函数会在游戏运行过程中自动被系统调用,而且调用顺序与在代码中的书写顺序无关。常用生命周期函数包括: 1. Awake(): 当脚本实例被加载时调用,用于初始化脚本的变量和引用。 2. Start(): 在Awake()之后调用,用于初始化游戏对象的状态和设置。 3. Update(): 在每一帧更新时调用,用于实现各种游戏行为,例如移动、旋转等。 4. LateUpdate(): 在所有Update()函数执行完后调用,用于处理一些需要在Update()之后进行的操作。 5. FixedUpdate(): 固定时间间隔执行的更新函数,主要用于处理物理模拟和刚体运动等。 6. OnEnable()/OnDisable(): 当游戏对象被启用或禁用时调用,用于处理相关的逻辑。 7. OnDestroy(): 游戏对象被销毁时调用,用于释放资源和清理相关的数据。 8. OnBecameVisible()/OnBecameInvisible(): 当对象对于相机可见或不可见时调用,用于处理对象在可见性变化时的逻辑。 除了以上列出的常用函数外,还存在其他一些特殊用途的生命周期函数,例如OnTriggerEnter()/OnTriggerExit()用于处理碰撞逻辑,OnGUI()用于绘制GUI等。通过合理使用这些生命周期函数,可以在Unity中实现各种复杂的游戏行为和逻辑。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Unity学习之生命周期函数](https://blog.youkuaiyun.com/weixin_43268649/article/details/120943472)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值