【事件函数】画面刷新相关——Update、FixedUpdate和LateUpdate

原文地址 https://docs.unity3d.com/Manual/EventFunctions.html

在Unity里,脚本并不像传统的脚本那样在循环中不断执行代码,直到退出循环;相反,Unity间接地将控制权传递给脚本,来调用其中的函数。一旦函数执行完毕,控制权将被传递回Unity。这些函数被称为事件函数。Unity制订了函数的声明标准,以确定发生某一特定事件时调用哪个函数。以下是一些最常见和最重要的事件。

·“Update”事件

游戏像是动态生成的动画。游戏编程的一个关键是,在每一帧画面呈现前改变游戏中对象的状态。在Unity脚本中,可以使用Update函数实现这种功能。函数声明:

void Update()
{

}

Unity将在每一帧画面绘制之前调用Update函数。

·"FixedUpdate"事件

不同的设备硬件不同,游戏画面绘制效率不同,帧绘制频率便随之变化,Unity每次调用Update事件的时间间隔也会变化。假如游戏中所有对象状态的计算都在Update中完成,那么会出现游戏在其他设备运行时怪物移动速度十分缓慢,或者速度快到玩家来不及作出反应就被怪物打死了。因此,Unity设计了FixedUpdate事件,这个事件将定期被调用,不受帧率的影响。

void FixedUpdate()
{

}

一般将物理相关的计算放在这个事件中。

·LateUpdate

在所有Update函数调用完后,调用LateUpdate。

当物体在Update里移动时,如需要相机跟随物体可以在LateUpdate里实现。

void LateUpdate() {
    Camera.main.transform.LookAt(target.transform);
}
时间: 2024-12-17 09:23:56

【事件函数】画面刷新相关——Update、FixedUpdate和LateUpdate的相关文章

Unity3D中事件函数的运行顺序

Unity3D中脚本的生命周期是依照预先定义好的事件函数的运行流程来演化的,详细流程例如以下: Editor模式下Reset: 当脚本第一次被挂到GameObject上或用户点击Resetbutton时,Reset被调用初始化脚本属性,最经常使用于在Inspector视图中呈现好的默认值. 载入第一个场景First Scene Load: 场景启动时会对场景中的每一个对象运行一遍例如以下事件函数: Awake:游戏启动之前初始化不论什么变量和游戏状态,仅在脚本生命周期中调用一次.不能做协程,St

事件函数的执行顺序

 事件函数的执行顺序 在unity的脚本,有大量的脚本执行按照预先确定的顺序执行的事件函数.此执行顺序说明如下: Editor Reset: Reset调用来初始化脚本的属性,当它第一次附加到该对象,并且使用Reset命令时. 第一次Scene Load scene启动 (一次为每个场景中的对象) 时,会调用这些函数. Awake:此函数始终是开始任何职能之前调用,并且也是在一个预置实例化之后.(如果一个游戏对象处于非活动状态,Awake不会被调用当被激活时 或者一个附加到游戏对象的任何脚本

Unity3D中自带事件函数的执行顺序(转)

原文:http://www.jianshu.com/p/1d93ece664e2 在Unity3D脚本中,有几个Unity3D自带的事件函数按照预定的顺序执行作为脚本执行.其执行顺序如下: 编辑器(Editor) Reset:Reset函数被调用来初始化脚本属性当脚本第一次被附到对象上,并且在Reset命令被使用时也会调用.编者注:Reset是在用户点击Inspector面板上Reset按钮或者首次添加该组件时被调用.Reset最常用于在见识面板中给定一个默认值. 第一次场景加载(First S

Unity3D中自带事件函数的执行顺序

在Unity3D脚本中,有几个Unity3D自带的事件函数按照预定的顺序执行作为脚本执行.其执行顺序如下: 编辑器(Editor) Reset:Reset函数被调用来初始化脚本属性当脚本第一次被附到对象上,并且在Reset命令被使用时也会调用.编者注:Reset是在用户点击Inspector面板上Reset按钮或者首次添加该组件时被调用.Reset最常用于在见识面板中给定一个默认值. 第一次场景加载(First Scene Load)这些函数会在一个场景开始(场景中每个物体只调用一次)时被调用.

MFC截图和界面刷新相关问题

问题描述: 就是首先用CDC来截图,保存图片的路径通过dlg窗体来手动设置并传入.可是截下来的图片就会连带那个对话框也截图下来. 就是这样,我想截后面那个图,前面这个对话框是要传入一个图片保存路径,可是连这个框也截下来了,就是点击确定后,那个框还没有来得及消失,就截图了, 见图片; 部分代码: 解决方案: 涉及到的函数有: BOOL UpdateWindow(HWND hWnd // 窗口的句柄); 如果窗口更新的区域不为空,UpdateWindow函数通过发送一个WM_PAINT消息来更新指定

Unity3D事件函数的执行顺序

In Unity scripting, there are a number of event functions that get executed in a predetermined order as a script executes. This execution order is described below: 在Unity脚本中,有一些按照预定顺序执行的事件函数,脚本即是按照此顺序执行的.这个执行顺序描述如下: First Scene Load 第一个场景加载 These fun

unity3D技术之事件函数的执行顺序[转]

unity3D技术之事件函数的执行顺序 转自http://www.yxkfw.com/?p=13703 在unity的脚本,有大量的脚本执行按照预先确定的顺序执行的事件函数.此执行顺序说明如下: Editor Reset: Reset调用来初始化脚本的属性,当它第一次附加到该对象,并且使用Reset命令时. 第一次Scene Load scene启动 (一次为每个场景中的对象) 时,会调用这些函数. Awake:此函数始终是开始任何职能之前调用,并且也是在一个预置实例化之后.(如果一个游戏对象处

Unity3D中组件事件函数的执行顺序

事件函数的执行顺序 Unity 脚本中有许多按预设顺序以脚本身份运行的事件函数.其执行顺序如下: 加载第一个场景 启动场景时调用这些函数(为场景中的每个对象调用一次). Awake: 始终在调用任何 Start 函数之前和实例化预设之后调用此函数.(如果游戏对象 (GameObject) 在启动期间处于非活动状态,则直到其处于活动状态时或调用添加至其本身的任何脚本中的函数时,再调用 Awake 函数.) OnEnable: (仅当对象 (Object) 处于活动状态时调用此函数):程序会在启用该

Unity3D事件函数的执行顺序 - 包含渲染等模块的完整版,中英文对照

原文地址: http://www.cnblogs.com/ysdyaoguai/p/3746828.html In Unity scripting, there are a number of event functions that get executed in a predetermined order as a script executes. This execution order is described below: 在Unity脚本中,有一些按照预定顺序执行的事件函数,脚本即是