LateUpdate、Late、FixedUpdate的意义
1、MonoBehaviour.Update 更新
当MonoBehaviour启用时,其Update在每一帧被调用。
2、MonoBehaviour.FixedUpdate 固定更新
当MonoBehaviour启用时,其 FixedUpdate在每一帧被调用。
处理Rigidbody时,需要用FixedUpdate代替Update。例如:给刚体加一个作用力时,你必须应用作用力在FixedUpdate里的固定帧,而不是Update中的帧(两者帧长不同)。
3、MonoBehaviour.LateUpdate 晚于更新
当Behaviour启用时,其LateUpdate在每一帧被调用。
LateUpdate是在所有Update函数调用后被调用。这可用于调整脚本执行顺序。例如:当物体在Update里移动时,跟随物体的相机可以在LateUpdate里实现。
另,Update和FixedUpdate的区别:
update跟当前平台的帧数有关,而FixedUpdate是真实时间,所以处理物理逻辑的时候要把代码放在FixedUpdate而不是Update。
Update是在每次渲染新的一帧的时候才会调用,也就是说,这个函数的更新频率和设备的性能有关以及被渲染的物体(可以认为是三角形的数量)。在性能好的机器上可能fps 30,差的可能小些。这会导致同一个游戏在不同的机器上效果不一致,有的快有的慢。因为Update的执行间隔不一样了。
而FixedUpdate,是在固定的时间间隔执行,不受游戏帧率的影响。有点想Tick。所以处理Rigidbody的时候最好用FixedUpdate。
PS:FixedUpdate的时间间隔可以在项目设置中更改,Edit->ProjectSetting->time 找到Fixedtimestep。就可以修改了。
Update和LateUpdate的区别:
在圣典里LateUpdate被解释成一句话:LateUpdate是在所有Update函数调用后被调用。这可用于调整脚本执行顺序。例如:当物体在Update里移动时,跟随物体的相机可以在LateUpdate里实现。这句我看了云里雾里的,后来看了别人的解释才明白过来。
LateUpdate是晚于所有Update执行的。例如:游戏中有2个脚步,脚步1含有Update和LateUpdate,脚步2含有Update,那么当游戏执行时,每一帧都是把2个脚步中的Update执行完后才执行LateUpdate 。虽然是在同一帧中执行的,但是Update会先执行,LateUpdate会晚执行。
现在假设有2个不同的脚本同时在Update中控制一个物体,那么当其中一个脚本改变物体方位、旋转或者其他参数时,另一个脚步也在改变这些东西,那么这个物体的方位、旋转就会出现一定的反复。如果还有个物体在Update中跟随这个物体移动、旋转的话,那跟随的物体就会出现抖动。 如果是在LateUpdate中跟随的话就会只跟随所有Update执行完后的最后位置、旋转,这样就防止了抖动。
做一个相机跟随主角的功能时,相机的位置调整写在LateUpdate(),老是不明白,看官方的SmoothFollow相机跟随写在Update()中。
原文链接源地址
转载于:https://www.cnblogs.com/Cocomo/p/5704622.html
LateUpdate、Late、FixedUpdate的意义相关推荐
- unity中的update、Lateupdate和FixedUpdate。
MonoBehaviour.Update 更新 当MonoBehaviour启用时,其Update在每一帧被调用. MonoBehaviour.FixedUpdate 固定更新 当MonoBehavi ...
- unity, 同步物体坐标一定要在LateUpdate中进行
设a为主动物体,b为跟随物体. 如果a,b都在同一个Update里更新坐标,那么两者自然是同步的. 如果a在a.Update里更新位置,而b在b.Update里将自己的位置更新为与a相同,那就会有误差 ...
- 简单Unity时间架构设计(克洛诺斯之匙)
好吧,这次的题目有点标题党之嫌,提出这个设计,是因为最近玩了鬼泣,其中有一个关卡叫做"为了自己的主人",任务中,需要利用克洛诺斯之匙将时间变慢,便于通过激光镇. 使用克洛诺斯之匙之 ...
- [Unity]Optimize Your Mobile Game Performance中文版
写在最前,能力有限,翻了个大概,轻喷.有兴趣和能力的同学还是建议看英文原版. 原版链接 提取码:p9fu 注:标黄部分是由于能力有限,实在难翻,大家可以参考英文原文做一个理解. 顺便吐槽下:如果直接复 ...
- unity移动游戏优化指南
目录 简介 性能分析 CPU Usage Profiler 模块 内存 自适应性能 编程和代码架构 项目配置 资源 图形和GPU优化 用户界面 音频 动画 物理 工作流程和协作 简介 优化 iOS 和 ...
- unity常见面试题
1. 游戏对象 问题:游戏对象消失三种方法的区别?(enabled/Destroy/active) gameObject.renderer.enabled=fasle 是控制一个物体是否在屏幕上渲染或 ...
- Unity 使用技巧与常见问题
注意:本文章将长期更新,长期修改. 快速找到对象 在Hierarchy选中需要查找的对象,在Scene视图中F,即可快速找到需要的对象 快速对齐对象 在Game视图中选到对象之后,按住V,此时可以看到 ...
- [Unity] 优化您的移动游戏性能2020(上)
英文原文: OptimizeYourMobileGamePerformance_V6_May2021.pdf 内容 前言 Profiling 内存 自适应性能 编程和代码架构 项目配置 资产 图形和 ...
- (转)MOMO的Unity3D研究院之深入理解Unity脚本的执行顺序(六十二)
http://www.xuanyusong.com/archives/2378 Unity是不支持多线程的,也就是说我们必须要在主线程中操作它,可是Unity可以同时创建很多脚本,并且可以分别绑定在不 ...
最新文章
- MySQL:left join 避坑指南
- python 结束进程 terminate_python – 如果已存在浏览器窗口,则process.terminate()不适用于chrome / firefox子进程...
- castle之动态代理
- Linux下的top命令
- x-requested-with 请求头 区分ajax请求还是普通请求
- 面试准备勿重“难”轻“易”
- java图片资源存放_Java编程中图片文件放哪
- 辐流式重力浓缩池计算_注册考试重点!平流式、竖流式、辐流式、斜板式4大沉淀池构型...
- html radio 更换图片,html修改radio、checkbox样式
- list 相加_Python 基础 list类、运算符
- linux 目录提权,【安全科普】Linux提权——利用可执行文件SUID
- anaconda 换源_Anaconda下安装tensorflow1.15过程记录
- 电脑管理员权限在哪里可以打开
- 通过IMAP方式迁移U-Mail邮件到Exchange 2013之Umail搭建!
- 关于Google大陆手机号不能验证的问题
- Android手机摄像头作为PC摄像头开发
- Unity策略游戏集合
- 青海25项措施发展中藏医药 省领导任联席会议召集人
- 有关计算机的课外阅读书籍,关于2020级本科生《认识实习》课外阅读书目的通知...
- SQL语法大全中文版