这个问题本来是在研究动画系统时遇到的:OnAnimatorMove在Animator.Update()调用,那这个Animator.Update是什么时候调用的呢。 

    Animator Component
    Manual:
    Controller:如果不赋值就不会有性能消耗,所以如果是动态赋值,初始时就留空吧
    Avatar:如果是类人模型,就必须赋值。这里不得不提暗黑,它并不使用类人选项,但却大量使用类人的功能,比如赋值Avatar,动画重定向等。
    Apply Root Motion:Should we control the character’s position and rotation from the animation itself or from script.
    Update Mode:影响Animator的更新时机(Monobehavior的Update[逻辑更新]或FixedUpdate[物理更新,当动画影响物理世界时使用])和更新的TimeScale。
    Culling Mode:一直更新动作 or render不可见时不更新动作,只有root motion更新动作。

所以Animator.Update的调用时机是可设置的,默认是Monobehavior的Update调用。

在此过程查文档也得到了Update LateUpdae FixedUpdate的调用时序:

  Update:每一帧被调用,调用频率跟当前帧率有关
  FixedUpdate:固定帧被调用,Edit->ProjectSetting->time 找到Fixedtimestep里设置固定帧间隔。处理物理逻辑的代码一般放这里,比如控制一个Rigibody,因为物理世界不应该被帧率影响。(事实上,并不是固定帧被调用,如果帧率非常低,比如Update()执行间隔比FixedUpdate()长,那期间后者会等前者执行后,把期间“累积”的FixedUpdate一次性执行完,这里有人做过测试:http://www.cnblogs.com/softcat/p/6136290.html)
  LateUpdate:LateUpdate是在所有Update函数调用后被调用。这就可以让开发者控制执行顺序了,一个应用是,许多脚本的Update影响主角位置,所以把摄像机跟随主角实现在LateUpdate()中,避免了摄像机抖动,毕竟你不能保证Update相机位置朝向的脚本,的Update函数,在所有脚本的Update函数队列中执行的顺序。

Update LateUpdae FixedUpdate的更多相关文章

  1. Unity游戏暂停之Update与FixedUpdate区别

    游戏暂停 示例程序 下面这段代码演示游戏暂停 using UnityEngine; using System.Collections; public class GamePauseTest : Mon ...

  2. Unity3D中Update()与FixedUpdate()的区别

    Unity3D中Update()与FixedUpdate()的区别是什么呢?从字面上理解,它们都是在更新时会被调用,并且会循环的调用.但是Update会在每次渲染新的一帧时,被调用.而FixedUpd ...

  3. 【转】 Update和FixedUpdate的区别

    MonoBehaviour.Update 更新 当MonoBehaviour启用时,其Update在每一帧被调用. MonoBehaviour.FixedUpdate 固定更新 当MonoBehavi ...

  4. update与fixedupdate差别

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网--Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=307 今天有人问我问什么我在处 ...

  5. [Unity-7] Update和FixedUpdate

    1.Update和FixedUpdate这是Unity既用内提供的帧功能接口相关联. Update():这个函数里面的内容每一帧都会被运行一次.这个函数有一个特点,那就是运行的频率等于帧率.而这个帧率 ...

  6. Cocos2d中update与fixedUpdate的区别(六)

    它如何工作呢? update:和fixedUpdate:方法实际这样工作. Cocos2D将从iOS接口中取得时间间隔(delta)在你的游戏代码执行期间,并且检查fixedUpdate:方法在间隔期 ...

  7. Cocos2d中update与fixedUpdate的区别(五)

    在真实情况中update:和fixedUpdate方法如何去调用? 由上所述,所以update方法在每帧被调用1次,从而给你一个机会去更新你的游戏对象的状态在其绘制之前.而fixedUpdate:方法 ...

  8. Cocos2d中update与fixedUpdate的区别(一)

    原文链接 关于这个问题cocos2d中的fixedUpdate:(或者是Unity中的FixedUpdate)在不同论坛中出现略显频繁.它被回答过很多次了,不管如何,每次一些童鞋在得到答案后还是有一些 ...

  9. Unity3D Update() 和 FixedUpdate()区别

    Unity3D中 Update()与FixedUpdate()的区别是什么呢?从字面上理解,它们都是在更新时会被调用,并且会循环的调用.但是Update会在每次渲 染新的一帧时,被调用.而FixedU ...

随机推荐

  1. 【转载-学习】[一个前端必会的 Nginx免费教程 - 技术胖]

    本文学习资料:https://www.jspang.com/detailed?id=39 Nginx官网:https://www.nginx.com/ Nginx:轻量级HTTP服务器: 采用事件驱动 ...

  2. ios 富文本 加颜色 删除线

    UILabel *valueL = [JAppViewTools getLabel:CGRectMake(JFWidth(15), CGRectGetMaxY(proName.frame)+JFWid ...

  3. nvidia-smi:控制您的GPU

    翻译  https://www.microway.com/hpc-tech-tips/nvidia-smi_control-your-gpus/ 大多数用户知道如何检查其CPU的状态,查看多少系统内存 ...

  4. JavaScript小游戏实例:简单的键盘练习

    键盘是一种常用的输入设备,灵活熟练地使用键盘进行输入是计算机用户需掌握的一门基本功.下面我们编写一个简单的键盘练习游戏. 1.刺破气泡交互式小动画 在编写简单的键盘练习游戏之前,先设计一个简单地刺破气 ...

  5. NoisyStudent:

  6. troubleshoot之:用control+break解决线程死锁问题

    目录 简介 死锁的代码 control+break命令 Full thread dump 死锁检测 Heap信息 总结 简介 如果我们在程序中遇到线程死锁的时候,该怎么去解决呢? 本文将会从一个实际的 ...

  7. Linux快速搭建C/C++开发环境

    导读:越来越多的程序员在Linux下进行C/C++的开发.本文以CentOS 7为例,教你快速搭建一个vi + gcc/g++ + Make + valgrind的开发环境. 本文字数:1500,阅读 ...

  8. Css 设置超过再两行显示省略号

    大部分场景都是超过一行就显示... <template> <div class="other-product-item item-name" :title=&qu ...

  9. [netty4][netty-buffer]netty之池化buffer

    PooledByteBufAllocator buffer分配 buffer分配的入口: io.netty.buffer.PooledByteBufAllocator.newDirectBuffer( ...

  10. STL函数库的应用第二弹——快排sort函数与结构体关键字排序

    时隔20多天,本蒟蒻终于记起了他的博客园密码!!! 废话不多说,今天主题:STL快排函数sort()与结构体关键字排序 Part 1:引入和导语 首先,我们需要知道,algorithm库里有一些奇怪的 ...