这个问题本来是在研究动画系统时遇到的: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. Sharding-JDBC实现水平拆分-单库分表

    参考资料:猿天地   https://mp.weixin.qq.com/s/901rNhc4WhLCQ023zujRVQ 作者:尹吉欢 当单表的数量急剧上升,超过了1千万以上,这个时候就要对表进行水平 ...

  2. MemoryMappedFile的初级应用

    public class SyncMemoryList<T>: SyncList<T>, IDisposable { private MemoryCache<T> ...

  3. 串行&并行&并发,同步&异步

    1. 串行&并行&并发 1.1 串行 这个非常好理解,字面意思,像串成一个串一样,顺序执行 上一个没执行完的话,后面的就必须无条件等待 一般情况就是一个线程里:任务一个接一个执行,类似 ...

  4. python8.4景区买票

    from threading import Threadimport threadinglock=threading.Lock()num=100#定义买票方法def sale(name): lock. ...

  5. linux系统中SSH免密设置报错

    执行 ssh-add ~/.ssh/msi_rsa 时报下面错误 Could not open a connection to your authentication agent. 解决办法: 执行命 ...

  6. 算法面试题:一个List<Student>,要求删除里面的男生,不用Linq和Lamda,求各种解,并说明优缺点!

    算法面试题:一个List,要求删除里面的男生,不用Linq和Lamda,求各种解,并说明优缺点! 解题思路 这是群里某位小伙伴去面试碰到的面试题,从题目本身来看,面试官应该是要考察面试者对泛型 Lis ...

  7. c++之广度优先搜索

    广度优先搜索BFS(Breadth First Search)也称为宽度优先搜索,它是一种先生成的结点先扩展的策略. 在广度优先搜索算法中,解答树上结点的扩展是按它们在树中的层次进行的.首先生成第一层 ...

  8. C#LeetCode刷题之#520-检测大写字母(Detect Capital)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3947 访问. 给定一个单词,你需要判断单词的大写使用是否正确. ...

  9. 剑指Offer——II平衡二叉树

    class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None # 这道题使用中序遍历加上 ...

  10. JDK1.8源码学习-LinkedList

    JDK1.8源码学习-LinkedList 目录 一.LinkedList简介 LinkedList是一个继承于AbstractSequentialList的双向链表,是可以在任意位置进行插入和移除操 ...