在 Unity 中是否有处理的 millis() 的替代品?



我试图在Unity中制作一个计时器,它特别需要Processing中的millis((之类的东西。有没有什么东西能像它一样工作,或者至少非常相似?

我试着用Time.Time或Time.deltaTime做一些事情,但什么都想不出来。

关于millis((:https://processing.org/reference/millis_.html

您可以使用C#系统APISystem.DateTime.UtcNow.MillisecondSystem.DateTime.Now.Millisecond(用于时钟的当前时间(

根据Petrusion的评论,您可以使用速度更快的System.Environment.TickCount来获得自您的计算机启动以来的毫秒数

如果您需要从应用程序启动开始的时间,您可以为其创建一个单一行为包装

using UnityEngine;
public class CustomTimer : MonoBehaviour
{
private int startTime = 0;

void Start()
{
startTime = System.Environment.TickCount;
}

public int MillisSinceStart()
{
return System.Environment.TickCount - startTime;
}
}

然后将其拖动到场景中,获取其引用并从的任何位置调用timer.GetEllapsedTime()

团结也有时间和框架相关的东西在发生例如,回调void Update() { }每帧调用一次,而void FixedUpdate() { }每0.02秒左右调用一次(可以在设置中更改(

如果你在做动画,也许最好使用依赖于帧的时间而不是常规时间,因为你的应用程序在绘制时会减慢速度并导致跳过一些帧

最新更新