当前位置: 首页 > news >正文

unity学习20:time相关基础 Time.time 和 Time.deltaTime

目录

1 unity里的几种基本时间

1.1  time 相关测试脚本

1.2 游戏开始到现在所用的时间 Time.time

1.3 时间缩放值 Time.timeScale

1.4 固定时间间隔 Time.fixedDeltaTime

1.5 两次响应时间之间的间隔:Time.deltaTime

1.6 对应测试代码

1.7 需要关注的2个基本方法  Update() , FixedUpdate() 

2 做1个定时器/计时器 

2.1 一般定时器的原理

2.2 另一种定时器实现

2.3 代码

2.4 测试情况


1 unity里的几种基本时间

1.1  time 相关测试脚本

  • 创建1个对象
  • 创建一个脚本  timeTest
  • 挂载到一个gameobject上去

1.2 游戏开始到现在所用的时间 Time.time

  • Time.time
  • 游戏开始到现在所用的时间
  • 代码里跑了实测是0

1.3 时间缩放值 Time.timeScale

  • Time.timeScale
  • 时间缩放值:时间倍速,加速,减速等
  • 应该是可以调整游戏的时间速度的倍数,部分时间的速度,实现黑客帝国那种子弹时间效果?
  • 默认是1
  • 理论上也可以是小于1,甚至0吧,也可以加快是大于1

1.4 固定时间间隔 Time.fixedDeltaTime

  • Time.fixedDeltaTime
  • 无论机器好不好,理论上都是0.02秒,也就是同一段代码,再不同的机器上跑的输出效果都一样,这个还挺重要的。
  • 实测也是如此
  • 这个是在gamesetting上的设置的,默认是0.02秒,可以修改
  • 在void Start() 里设置的,只会执行一次,执行的内容就是读取这个gamesetting的这个配置

1.5 两次响应时间之间的间隔:Time.deltaTime

  • Time.deltaTime
  • 比如可以再2帧之间,取时间间隔
  • 也可以其他2个行为之间,取时间间隔
  • 可以看出下面测试代码的差别

  • void Update() {}

  • 每帧执行一次

  • Time.deltaTime 取到的就是每帧之间的间隔时间

  • 实际可以看前面是0.02秒,后面就越来越块,到了0.005秒左右有波动

  • 也就是后面能到100-200帧/秒

  • private void FixedUpdate() {}

  • 每个固定时间间隔执行一次(没修改默认就是0.02秒)

  • Time.deltaTime 取到的就是0.02秒,很稳

1.6 对应测试代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class timeTest : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){//游戏开始到现在所花的时间Debug.Log("游戏开始到现在所花的时间:"+Time.time);//"时间缩放值"Debug.Log("时间缩放值:"+Time.timeScale);//游戏固定时间间隔Debug.Log("游戏固定时间间隔"+Time.fixedDeltaTime);}// Update is called once per framevoid Update(){//上一帧到现在用的时间Debug.Log("上一帧到现在用的时间"+Time.deltaTime);}private void FixedUpdate(){//测试固定间隔时间   Debug.Log("测试固定间隔时间"+Time.deltaTime);}}

1.7 需要关注的2个基本方法  Update() , FixedUpdate() 

  •             void Update()                      // Update is called once per frame 每帧触发1次
  • private void FixedUpdate()             //固定间隔时间,触发1次 

    // Update is called once per frame

    void Update()

    {

    //上一帧到现在用的时间

    Debug.Log("上一帧到现在用的时间"+Time.deltaTime);

    }


 

    private void FixedUpdate()

    {

    //测试固定间隔时间  

    Debug.Log("测试固定间隔时间"+Time.deltaTime);

    }

2 做1个定时器/计时器 

  • 一般用time, 比如 timer2,timer1 这样的表示时间点
  • Time.time () 返回的就是时间点
  • 一般用timer,比如timer1,timer2 表示时间段,定时器
  • Time.deltaTime 返回的就是时间段

2.1 一般定时器的原理

  • // 先界定,要测试的程序开始时的时间
  • timer1=Time.time ()
  • //再取得结束时的时间
  • timer2=Time.time ()
  • // 时间差就是要计算的2者差值
  • timer=timer2-timer1

2.2 另一种定时器实现

  • //先初始化定时器,也就是界定,定时器的开始时间为0,零点
  • timer=0
  • //定时器循环计时,累计时间
  • timer=timer + Time.deltaTime

2.3 代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class timeTest : MonoBehaviour
{float time1=Time.time;float timer1=0;float timer2=0;// Start is called before the first frame updatevoid Start(){//游戏开始到现在所花的时间Debug.Log("游戏开始到现在所花的时间:"+Time.time);//"时间缩放值"Debug.Log("时间缩放值:"+Time.timeScale);//游戏固定时间间隔Debug.Log("游戏固定时间间隔"+Time.fixedDeltaTime);}// Update is called once per framevoid Update(){//上一帧到现在用的时间Debug.Log("上一帧到现在用的时间"+Time.deltaTime);timer1=timer1+Time.deltaTime;   //不能再这样定义一次了 float timer1=timer1+Time.deltaTime; 否则就是2个变量了,上面的全局,这里是局部float time2=Time.time;timer2=time2-time1;Debug.Log("第1个计时器"+timer1);Debug.Log("第2个计时器"+timer2);}private void FixedUpdate(){//测试固定间隔时间   Debug.Log("测试固定间隔时间"+Time.deltaTime);}}

2.4 测试情况

相关文章:

unity学习20:time相关基础 Time.time 和 Time.deltaTime

目录 1 unity里的几种基本时间 1.1 time 相关测试脚本 1.2 游戏开始到现在所用的时间 Time.time 1.3 时间缩放值 Time.timeScale 1.4 固定时间间隔 Time.fixedDeltaTime 1.5 两次响应时间之间的间隔:Time.deltaTime 1.6 对应测试代码 1.7 需要关注的2个基本…...

【C++】特殊类设计、单例模式与类型转换

目录 一、设计一个类不能被拷贝 (一)C98 (二)C11 二、设计一个类只能在堆上创建对象 (一)将构造函数私有化,对外提供接口 (二)将析构函数私有化 三、设计一个类只…...

scratch七彩六边形 2024年12月scratch三级真题 中国电子学会 图形化编程 scratch三级真题和答案解析

目录 scratch七彩六边形 一、题目要求 1、准备工作 2、功能实现 二、案例分析 1、角色分析 2、背景分析 3、前期准备 三、解题思路 1、思路分析 2、详细过程 四、程序编写 五、考点分析 六、推荐资料 1、入门基础 2、蓝桥杯比赛 3、考级资料 4、视频课程 5、…...

代码随想录刷题day16|(哈希表篇)349.两个数组的交集

目录 一、哈希表理论基础 二、集合set在哈希法中的应用 三、相关算法题目 四、相关知识点 1.set集合特点和常用方法 1.1 set集合概述 1.2 set集合特点 1.3 常用方法 2.set集合转换成数组 法1:另新建一个数组 法2:将结果集合转为数组 ▲ 3.数组…...

Synology 群辉NAS安装(6)安装mssql

Synology 群辉NAS安装(6)安装mssql 写在前面mssql 2019:成功安装说明,这个最终成功了 mssql 2022没有成功1. pull image2.启动mssql docker container 远程连接 写在前面 mssq是一个重要节点。 这是因为我对mysql没有一丝好感。虽然接触了许…...

2025年美赛B题-结合Logistic阻滞增长模型和SIR传染病模型研究旅游可持续性-成品论文

模型设计思路与创新点: 建模的时候应该先确定我们需要建立什么类的模型?优化类还是统计类?这个题需要大量的数据分析,因此我们可以建立一个统计学模型。 统计学建模思路:观察规律,建立模型,参…...

Hook 函数

什么是hook函数? 在计算机编程中,hook函数是指在特定的事件发生时被调用的函数,用于在事件发生前或后进行一些特定的操作。通常,hook函数作为回调函数被注册到事件处理器中,当事件发生时,事件处理器会自动…...

蓝桥杯模拟算法:蛇形方阵

P5731 【深基5.习6】蛇形方阵 - 洛谷 | 计算机科学教育新生态 我们只要定义两个方向向量数组,这种问题就可以迎刃而解了 比如我们是4的话,我们从左向右开始存,1,2,3,4 到5的时候y就大于4了就是越界了&…...

DeepSeek-R1解读:纯强化学习,模型推理能力提升的新范式?

DeepSeek-R1解读:纯强化学习,模型推理能力提升的新范式? 1. Impressive Points2. 纯强化学习,LLM推理能力提升新范式?2.1 DeepSeek-R1-Zero2.2 DeepSeek-R1 3. 端侧模型能力提升:蒸馏>强化学习 1. Impre…...

深度解析:基于Vue 3的教育管理系统架构设计与优化实践

一、项目架构分析 1. 技术栈全景 项目采用 Vue 3 TypeScript Tailwind CSS 技术组合,体现了现代前端开发的三大趋势: 响应式编程:通过Vue 3的Composition API实现细粒度响应 类型安全:约60%的组件采用TypeScript编写 原子化…...

【PyTorch】3.张量类型转换

个人主页:Icomi 在深度学习蓬勃发展的当下,PyTorch 是不可或缺的工具。它作为强大的深度学习框架,为构建和训练神经网络提供了高效且灵活的平台。神经网络作为人工智能的核心技术,能够处理复杂的数据模式。通过 PyTorch&#xff0…...

Spring Boot整合JavaMail实现邮件发送

一. 发送邮件原理 发件人【设置授权码】 - SMTP协议【Simple Mail TransferProtocol - 是一种提供可靠且有效的电子邮件传输的协议】 - 收件人 二. 获取授权码 开通POP3/SMTP,获取授权码 授权码是QQ邮箱推出的,用于登录第三方客户端的专用密码。适用…...

字节跳动发布UI-TARS,超越GPT-4o和Claude,能接管电脑完成复杂任务

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...

数据的秘密:如何用大数据分析挖掘商业价值

数据的秘密:如何用大数据分析挖掘商业价值 在这个数据爆炸的时代,我们每天都在产生、存储和处理着海量的数据。然而,仅仅拥有数据并不等于拥有价值。就像拥有一座金矿,不开采和提炼,最终只是一堆毫无用处的石头。如何…...

OAuth1和OAuth2授权协议

OAuth 1 授权协议 1. 概述 OAuth1 是 OAuth 标准的第一个正式版本,它通过 签名和令牌 的方式,实现用户授权第三方访问其资源的功能。在 OAuth1 中,安全性依赖于签名机制,无需传递用户密码。 2. 核心特性 使用 签名&#xff08…...

AI学习(vscode+deepseek+cline)

1、网页生成不成功时,直接根据提示让模型替你解决问题 2、http://localhost:3000 拒绝链接时,cmd输入命令InetMgr,网站右键新建-配置你的网页代码物理地址,这里我还输入本机登录名及密码了,并把端口地址由默认80修改为…...

04-机器学习-网页数据抓取

网络爬取(Web Scraping)深度指南 1. 网络爬取全流程设计 一个完整的网络爬取项目通常包含以下步骤: 目标分析: 明确需求:需要哪些数据(如商品价格、评论、图片)?网站结构分析&…...

计网week1+2

计网 一.概念 1.什么是Internet 节点:主机及其运行的应用程序、路由器、交换机 边:通信链路,接入网链路主机连接到互联网的链路,光纤、网输电缆 协议:对等层的实体之间通信要遵守的标准,规定了语法、语义…...

重定向与缓冲区

4种重定向 我们有如下的代码&#xff1a; #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <string.h>#define FILE_NAME "log.txt"int main() {close(1)…...

练习题 - Django 4.x File 文件上传使用示例和配置方法

在现代的 web 应用开发中,文件上传是一个常见的功能,无论是用户上传头像、上传文档,还是其他类型的文件,处理文件上传都是开发者必须掌握的技能之一。Django 作为一个流行的 Python web 框架,提供了便捷的文件上传功能和配置方法。学习如何在 Django 中实现文件上传,不仅…...

孤舟笔记 互联网常用框架篇三 Dubbo是如何动态感知服务下线的?注册中心和服务端双保险

文章目录先说结论机制一&#xff1a;注册中心通知机制二&#xff1a;心跳检测机制三&#xff1a;连接事件感知机制四&#xff1a;定时拉取四种机制的协作回答技巧与点评加分回答面试官点评个人网站微服务环境下&#xff0c;服务实例随时可能上下线——重启、扩容、宕机……调用…...

Web渗透测试能力成长地图:从工具使用到漏洞认知跃迁

1. 这不是工具清单&#xff0c;而是一张Web渗透测试的“能力成长地图”你刚点开这篇文章&#xff0c;大概率正站在两个路口之间&#xff1a;一边是网上铺天盖地的“十大免费扫描器推荐”&#xff0c;点进去全是截图下载链接一句“一键扫漏洞”&#xff0c;结果装完跑两下&#…...

阿波罗登月,不可能:读心术与影子叙事 ——不是向全世界展示登月,而是向全世界注射登月

阿波罗登月&#xff0c;不可能&#xff1a;读心术与影子叙事 ——不是向全世界展示登月&#xff0c;而是向全世界注射登月 Jianbing Zhu 1^{1}1 1^{1}1 ECT-OS-JiuHuaShan 文明实验室 ORCID: 0009-0006-8591-1891 DOI: 10.5281/zenodo.20373157 Email: ect-os-jiuhuashanzoho…...

危急时刻的六条基本安全提示

人机协作&#xff0c;AI模型&#xff1a;Deepseek 仅供参考 危急时刻的六条基本安全提示 以下内容仅为通用性安全建议&#xff0c;供在紧急情况下保持冷静、保护自身安全时参考。所有建议均基于常理和公共安全常识&#xff0c;不包含任何具体操作细节或可能被不当使用的信息…...

机器学习与深度学习在社交媒体心理健康检测中的权衡与选择

1. 项目概述&#xff1a;当AI遇见心灵&#xff0c;社交媒体心理健康检测的技术十字路口在社交媒体成为我们数字生活延伸的今天&#xff0c;海量的文本数据无意中记录着用户的情感波动与心理状态。作为一名长期混迹于数据科学和自然语言处理&#xff08;NLP&#xff09;一线的从…...

Unity中实现深度遮挡:LingBot-Depth实战接入与优化

1. 这不是“加个插件就完事”的AR效果——为什么LingBot-Depth在Unity里值得专门写一篇实战教程你肯定见过那种AR应用&#xff1a;虚拟椅子摆在真实地板上&#xff0c;但当你绕到椅子后面&#xff0c;它依然完整显示&#xff0c;完全无视身后那堵真实的墙&#xff1b;或者一只3…...

Mysql?基础语法!!!

作为程序员、数据分析从业者&#xff0c;甚至是产品运营&#xff0c;SQL都是必须掌握的核心技能。不管是后端开发对数据库增删改查&#xff0c;还是数据分析提取业务数据&#xff0c;本质都是在写SQL语句。很多新手觉得SQL难&#xff0c;其实是没有理清逻辑。SQL的核心逻辑非常…...

基于BLE模块的低功耗无线遥控器设计与实现

1. 项目概述&#xff1a;基于BLE模块的无线遥控器设计与实现几年前&#xff0c;我在捣鼓智能家居时&#xff0c;一直想找一个低功耗、响应快、又能自己完全掌控的无线遥控方案。市面上的成品要么协议封闭&#xff0c;要么功耗感人&#xff0c;要么延迟高得让人着急。后来&#…...

密码学入门:区块链中的密码学原理

密码学入门&#xff1a;区块链中的密码学原理 大家好&#xff0c;我是欧阳瑞&#xff08;Rich Own&#xff09;。今天想和大家聊聊密码学这个重要话题。作为一个Web3探索者&#xff0c;密码学是区块链的基础。今天就来分享一下区块链中常用的密码学原理。 为什么密码学很重要&a…...

从无人机到自动驾驶:一文读懂ROS中ENU、NED、相机坐标系到底怎么用

从无人机到自动驾驶&#xff1a;ROS中ENU、NED与相机坐标系实战指南 当你在无人机上安装Realsense相机时&#xff0c;是否遇到过相机数据与飞控数据"对不上"的情况&#xff1f;或者在自动驾驶项目中&#xff0c;GPS的北东地坐标如何与激光雷达的东北天坐标对齐&#…...