Time类

本文详细介绍了Unity中的Time类,包括游戏运行时间、帧间隔、时间流逝速度等关键属性及其应用场景,帮助开发者更好地掌握游戏时间控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Time类是Unity中获取时间信息的接口类,只有静态属性。

1、游戏从开始到现在经历的时间(秒)(只读)

public static float time;

注:在一个帧中多次调用,则返回相同的值。

2、上一帧耗费的时间(秒)(只读)

public static float deltaTime;

例:transform.Translate(0,0,Time.deltaTime * 10); //表示物体在Z轴方向移动10m/s。

一帧:一副静止的画面,1秒时间内传输图片的帧数。

帧速率:fps(Frames Per Second)每秒可刷新几次。

3、最近FixedUpdate的时间。该时间从游戏开始计算。返回从游戏启动到现在以固定频率更新的时间。

public static float fixedTime;

4、Time.deltaTime的平滑淡出

public static float smoothDeltaTime;

注:通常Time.smoothDeltaTime的累加和比Time.deltaTime的累加和稍微大些。主要用于在非FixedUpdate方法中需要平滑过渡的计算。

5、时间流逝速度的比例。可以用来制作慢动作特效。

public static float timeScale;

注:默认值为1.

例:若想代码受timeScale控制时(如暂停、加速),可以把代码放在FixedUpdate中,又或者跟Time.time或Time.deltaTime扯上关系。

总结:

1)timeScale不影响Update和LateUPdate,会影响FixedUpdate。

2)timeScale不影响Time.realtimeSinceStartup,会影响Time.timeSinceLevelLoad和Time.time。

3)timeScale不影响Time.fixedDeltaTime和Time.uncaleDeltaTime,会影响Time.deltaTime.

6、已渲染的帧的总数(只读)

public static int frameCount;

7、游戏从开始到现在经历的真实时间(秒)

public static float realtimeSinceStartup;

8、固定帧率设置,用于设置或返回帧速率的值

public static int captureFramerate;

例:Time.captureFramerate = 25; //帧速率为25fps。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值