Unity3D】【Time类基础】Time类怎么使用?

2020-12-19 15:39发布

6条回答
水默
2楼 · 2020-12-19 15:45

定时的基础在于记数,计数的目的在于比较,比较的结果用于控制。围绕上述三条基本原则,无论从哪一个切入点开始向后执行,都可以实现。把握大的思想方向,如何做,在于你能用什么。


天天
3楼 · 2020-12-19 15:57

1、Time.time 表示从游戏开发到现在的时间,会随着游戏的暂停而停止计算。

2、Time.timeSinceLevelLoad 表示从当前Scene开始到目前为止的时间,也会随着暂停操作而停止。

3、Time.deltaTime 表示从上一帧到当前帧时间,以秒为单位。

4、Time.fixedTime 表示以秒计游戏开始的时间,固定时间以定期间隔更新(相当于fixedDeltaTime)直到达到time属性。

5、Time.fixedDeltaTime 表示以秒计间隔,在物理和其他固定帧率进行更新,在Edit->ProjectSettings->Time的Fixed Timestep可以自行设置。

6、Time.SmoothDeltaTime 表示一个平稳的deltaTime,根据前N帧的时间加权平均的值。

7、Time.timeScale 时间缩放,默认值为1,若设置<1>1,表示时间加快,可以用来加速和减速游戏,非常有用。

8、Time.frameCount 总帧数

9、Time.realtimeSinceStartup 表示自游戏开始后的总时间,即使暂停也会不断的增加。

10、Time.captureFramerate 表示设置每秒的帧率,然后不考虑真实时间。

11、Time.unscaledDeltaTime 不考虑timescale时候与deltaTime相同,若timescale被设置,则无效。

12、Time.unscaledTime 不考虑timescale时候与time相同,若timescale被设置,则无效。


希希
4楼 · 2020-12-19 16:18

1、Time.time 表示从游戏开发到现在的时间,会随着游戏的暂停而停止计算。

2、Time.timeSinceLevelLoad 表示从当前Scene开始到目前为止的时间,也会随着暂停操作而停止。

3、Time.deltaTime 表示从上一帧到当前帧时间,以秒为单位。

4、Time.fixedTime 表示以秒计游戏开始的时间,固定时间以定期间隔更新(相当于fixedDeltaTime)直到达到time属性。

5、Time.fixedDeltaTime 表示以秒计间隔,在物理和其他固定帧率进行更新,在Edit->ProjectSettings->Time的Fixed Timestep可以自行设置。

6、Time.SmoothDeltaTime 表示一个平稳的deltaTime,根据前N帧的时间加权平均的值。

7、Time.timeScale 时间缩放,默认值为1,若设置<1>1,表示时间加快,可以用来加速和减速游戏,非常有用。

8、Time.frameCount 总帧数

9、Time.realtimeSinceStartup 表示自游戏开始后的总时间,即使暂停也会不断的增加。

10、Time.captureFramerate 表示设置每秒的帧率,然后不考虑真实时间。

11、Time.unscaledDeltaTime 不考虑timescale时候与deltaTime相同,若timescale被设置,则无效。

12、Time.unscaledTime 不考虑timescale时候与time相同,若timescale被设置,则无效。


studentaaa
5楼 · 2020-12-20 10:12

在初始化Timer时 ,开启一个线程循环提取任务数组中的任务,如果任务数组为空,线程等待直到添加任务;

当添加任务时,唤醒线程,提取数组中标记为1的任务,

如果该任务状态为CANCELLED,则从数组中删除任务,continue ,继续循环提取任务;

然后将当前时间与任务执行时间点比较 标记taskFired=executionTime<=currentTime;

taskFired =false ,说明任务执行时间还没到,则调用wait等待(executionTime-currentTime) 时间长度,然后循环重新提取该任务;

taskFired =true,说明任务执行时间已经到了,或者过去了。继续判断 任务循环时间间隔period;

                         period=0时,说明此次任务是非循环任务,直接将该任务从数组中删除,并将状态置为EXECUTED,然后执行任务的run方法!

                         period!=0时,说明此次任务时循环任务,将该任务的执行时间点向前推进,具体推进时间根据调用的方法判断;

                                                如果是schedule方法,则在当前时间基础上向前推进period时间长度;

                                                如果是scheduleAtFixedRate方法,则在当前任务执行时间点基础上向前推进period时间长度,

                                                最后执行任务的run方法;循环提取任务


flame
6楼 · 2020-12-21 15:59

1、Time.time 表示从游戏开发到现在的时间,会随着游戏的暂停而停止计算。

2、Time.timeSinceLevelLoad 表示从当前Scene开始到目前为止的时间,也会随着暂停操作而停止。

3、Time.deltaTime 表示从上一帧到当前帧时间,以秒为单位。

4、Time.fixedTime 表示以秒计游戏开始的时间,固定时间以定期间隔更新(相当于fixedDeltaTime)直到达到time属性。

5、Time.fixedDeltaTime 表示以秒计间隔,在物理和其他固定帧率进行更新,在Edit->ProjectSettings->Time的Fixed Timestep可以自行设置。

6、Time.SmoothDeltaTime 表示一个平稳的deltaTime,根据前N帧的时间加权平均的值。

7、Time.timeScale 时间缩放,默认值为1,若设置<1>1,表示时间加快,可以用来加速和减速游戏,非常有用。

8、Time.frameCount 总帧数

9、Time.realtimeSinceStartup 表示自游戏开始后的总时间,即使暂停也会不断的增加。

10、Time.captureFramerate 表示设置每秒的帧率,然后不考虑真实时间。

11、Time.unscaledDeltaTime 不考虑timescale时候与deltaTime相同,若timescale被设置,则无效。

12、Time.unscaledTime 不考虑timescale时候与time相同,若timescale被设置,则无效。


小狮子
7楼 · 2021-05-07 14:06

专门用来计时的,楼上回答的都比较全面,希望可以帮助到你

相关问题推荐

  • 回答 17

    还是要学好编程基础呀如果你觉得编程很苦难 不一定要从c#开始学  学学js flash as等等  有个梯度就好多了如果要用好unity  不会编程那是不行的  学习的过程中都有个头疼的过程  记住  头越痛  代表你要接受的东西越多  坚持 你的大脑在和知识兼容中:D...

  • unity如何自学Unity3D 2022-01-06 15:24
    回答 18

    可以先思考学习的目的,是什么因素在驱动你。是完成一款作品?进入某个行业?还是探究某类问题?否则和技术相关的知识浩如烟海,很容易迷失在细枝末节上。而要找到动力源头。个人的经验,就是关注一些和自己同方向,同类型的创作者。他们输出的作品会激励你,...

  • 回答 23

    可以让模型师直接作出这样的形状,如果用纯Unity制作,就要用基本游戏对象拼接了,包括楼梯,城堡,都可以拼接出来。正常情况不会这样做,因为不够精美,都是建模师来实现,毕竟Unity不属于专业的建模软件,侧重于实现功能。...

  • 回答 2

    Shader Unlit/Test{Properties{_MainTex(MainTex,2D)=white{}_MainColor(MainColor,COLOR)=(1,1,1,1)_AddTex(AddTex,2D)=white{}_Maxset(Max,Range(0.1,1.0))=0.1}SubShader{Tags{RenderType=Transparent Queue=Tran...

  • 回答 4

    文章主要为大家详细介绍了Unity Shader实现水波纹效果,文中示例代码介绍的非常详细具体代码实现如下:Shader Custom/shuibowen{ Properties{ _MainTex(Base (RGB),2D)=white{} _distanceFactor(Distancefactor,float)=1 _timeFactor(time factor,float)=...

  • 回答 7

    策划的最基本的原则就是:改进缺点,做别人没有做到的。无论游戏策划还是其它策划都是一样!    游戏策划的第二个原则:放飞思想。也许你认为我是说策划们应该充满想象力,能想一些匪夷所思的东西!对不起。不是这意思!一个合格的策划不是为了发泄自己的...

  • 回答 7
    已采纳

    可以多玩一些其它的游戏,看一些科幻电影等,寻找灵感。

  • 回答 3
    已采纳

    游戏架构与设计不纯粹是一门科学,它不需要提出假设或探究真理,也不被逻辑或正规方法的严格标准所束缚。游戏的目的就是通过玩来获得娱乐,因此游戏设计即需要艺术家一样的创造力,也需要工程师一样的精心规划。游戏设计是一门手艺,就像好莱坞的电影摄像或服...

  • 回答 5

    Time类是一个类,具体的功能 得看 成员函数 和数据成员

  • 回答 3

    1、先打开Time类查看它的时间设置方法2、然后new一个time对象3、然后在Tiem对象设置值4、这里需要注意的是如果设置的值太大了就会出错5、这时就需要添加long类型的L标识就不会出错了6、然后就会可以获得时间小时了...

没有解决我的问题,去提问