帧率和更新频率
帧率与生命周期
生命周期函数是引擎在脚本的特定阶段自动调用的预定义方法。 开发者可以通过实现它们来控制对象的初始化、更新、销毁等行为。它们的执行顺序和触发时机由引擎内部管理,无需手动调用。 脚本默认的生命周期包括Update,LateUpdate等。每帧应用刷新都会被按需运行。 而脚本声明周期的函数执行也是影响帧数的主要原因。每一个脚本的生命周期都会默认在一帧内完成,即引擎在执行完所有脚本的生命周期后才会进入下一帧数的渲染与逻辑执行。 为了应用的性能考量,应该经历限制在脚本的update类似函数中轮询复杂的执行逻辑。
主线程与循环
为了保证数据安全,引擎逻辑全部都是在一个线程里完成。也就是我们常说的引擎主线程。 在主线程上运行一次完整的游戏逻辑帧我们称之为完成了一次帧循环,也称为主循环。 注意几点: 一个逻辑帧我们通常是指一次包含了以Update()为主的循环调用过程。因为我们游戏的逻辑大部分都是运行在Update()里面。 一个逻辑帧里面可能包含了多次FixedUpdate()的调用。 引擎中是可以使用多线程的,但需要注意在一些关键性的数据在其它线程是不能访问修改的。例如对于Actor和组件的获取和修改,在多线程中处理可能会导致修改失败或其它问题
固定时间步长的更新
与帧更新不同,部分系统需要以固定的时间间隔更新,这对于例如物理模拟的准确性和一致性非常重要。固定更新之间的间隔通常称为 固定时间步长。 您可以通过脚本生命周期的FixedUpdate函数来实现脚本逻辑的固定时间步长更新。

