• 前提1:update函数里的内容一帧调用一次。
  • 前提2:Time.deltatime是一个值,表示一帧的间隔时间。这个值在不同电脑里不一样。
  • 为什么乘deltatime:当update里的变化量乘了这个deltatime之后,每秒的变化量就是固定的了。而之前由于一秒钟我们不确定自己的电脑有几帧,变化量不确定。
  • 举例:让一个物体向前移动。
    void Update(){transform.Translate(0,0,1);}

我们设自己的电脑一秒20帧,20frame/s,这里一帧移动一个单位,那么一秒钟有20帧,就移动20个单位。
接下来乘这个deltatime

    void Update(){transform.Translate(Vector3.forward*Time.deltaTime);}

deltatime是一帧的时间,我们知道了一秒20帧,那么显然一帧是1/20秒,这样,一帧就只移动了1/20个单位,一秒钟有20帧,那么一秒就是一个单位。

  • 推广(证明):设我们的电脑n帧一秒(n f/s),update中每一帧的变化量为D,乘以deltatime后,每一帧的变化量为
    Delf=1/n∗DDelf=1/n * D Delf=1/n∗D
    每一秒(记得一秒是n帧)的变化量就为
    n∗Delf=n∗(1/n∗D)=Dn*Delf=n*(1/n*D)=Dn∗Delf=n∗(1/n∗D)=D
    为常量D

*结论:当我们在update中乘以了Time.deltatime之后,每一秒的变化量为常量,且其大小就是我们在update中定义的量。

彻底理解unity里的Time.deltatime相关推荐

  1. 全面理解Unity加载和内存管理

    转载自:http://www.ceeger.com/forum/read.php?tid=4394 最近一直在和这些内容纠缠,把心得和大家共享一下: Unity里有两种动态加载机制:一是Resourc ...

  2. C#_深入理解Unity容器

    C#_深入理解Unity容器 一.背景 **DIP是依赖倒置原则:**一种软件架构设计的原则(抽象概念).依赖于抽象不依赖于细节 **IOC即为控制反转(Inversion of Control):* ...

  3. [翻译]理解Unity的自动内存管理

    当创建对象.字符串或数组时,存储它所需的内存将从称为堆的中央池中分配.当项目不再使用时,它曾经占用的内存可以被回收并用于别的东西.在过去,通常由程序员通过适当的函数调用明确地分配和释放这些堆内存块.如 ...

  4. unity 里让一个物体围绕x,y,z轴旋转起来。

    如何 在unity 里让一个物体围绕x,y,z轴旋转起来? 先看下效果:  如何 在unity 里让一个物体围绕x轴旋转起来?答案揭晓: 实现代码: using System.Collections; ...

  5. 如何在Unity里使用OptiTrack定位数据

    如何在Unity里使用OptiTrack定位数据 一.下载软件和插件 登录Optitrack官网 http://www.optitrack.com.cn/downloads/motive.html 1 ...

  6. 如何理解Unity组件化开发模式

    Unity的开发模式核心:节点和组件,组件可以加载到任何节点上,每个组件都有 gameobject 属性,可以通过这个属性获取到该节点,即游戏物体. 也就是说游戏物体由节点和组件构成,每个组件表示物体 ...

  7. 在3Dmax中导出模型到Unity里,rotation发生了改变该怎么办

    别的帖子都是在3dmax里改这个那个的,给一个简单粗暴的方法,在unity里创建一个空物体,rotation为(0,0,0),把正方向调好了的模型(实际角度可能各种各样的)直接挂在空物体上,这个空物体 ...

  8. idea调试unity里面的lua代码

    前言 本人一名java后端开发,看到前端同事调试lua代码无脑print,甚为鄙视,百度加实操写一份调试unity的lua脚本文档 操作 1.安装lua lua官网下载页面 最终下载页面 2.idea ...

  9. 不理解话里真正包含的意思

    村上春树说:如若相爱,便携手到老:如若错过,便护他安好.看到这句话,我一个人偷偷地动情了.并不是因为这句话本身有多煽情,也不是因为在这句话里找到了什么慰藉的东西,只是因为一时突然的情不自禁.     ...

最新文章

  1. Django视图层总结
  2. 2015年第六届蓝桥杯C/C++ A组国赛 —— 第一题:方格填数
  3. 通过自定义消息调用主窗体的菜单项
  4. java编译通过,运行却提示找不到或无法加载主类
  5. linux系统下 java 环境的安装
  6. SQL拼接自己需要的字符串
  7. Android IOS WebRTC 音视频开发总结(二二)-- 多人视频架构模式
  8. Java写的斗地主游戏源码
  9. android markdown编辑器,安卓版好用的Markdown编辑器
  10. 利用Racher轻松构建PASS平台
  11. TkMybatis的使用
  12. 30 道 MySQL 基础知识
  13. autoCAD 向图形中添加文字
  14. 金山卫士界面源码解读及界面库分离(4)
  15. dojo query 实现Ajax,Dojo Query 详解
  16. 计算机基础键盘操作,电脑基础入门操作知识三:如何使用键盘盲打
  17. 孔洞填充及连通分量提取
  18. 安装sql server 过程(为了使用SQL Server Management Studio)
  19. nginx代理ajax跨域请求
  20. 经验分享——本科非技术女

热门文章

  1. linux的asil等级 - 及改进 之一
  2. Ubuntu 安装 Code Blocks 16.01
  3. JSON parse error: Cannot deserialize value of type
  4. 关于128X8静态存储器芯片设计(转)
  5. 开发者如何快速熟悉一个新敏捷项目
  6. 北京面向社会招录消防员900人 将实行全程退出机制
  7. NotionAI - 文档领域的ChatGPT,一款 AI 加持的在线文档编辑和管理工具
  8. Unity接入Google广告(AdMob)
  9. except 和 except for
  10. 【必读】C语言基础知识大全