这是我试图制作2D粒子模拟的代码片段
static long lastTime = 0;
static double GetDeltaTime()
{
long now = DateTime.Now.Millisecond;
double dT = (now - lastTime); // / 1000
lastTime = now;
Console.WriteLine(dT);
return dT;
}
Run Code Online (Sandbox Code Playgroud)
应该很明显它将返回自上次调用该方法以来的时间(以毫秒为单位).唯一的问题,这就是它打印的内容
393
1
0
0
0
0
0
0
0
0
0
...
Run Code Online (Sandbox Code Playgroud)
好的,也许这只是因为每次通过花费不到一毫秒.所以我把它改成了
static long lastTime = 0;
static double GetDeltaTime()
{
long now = DateTime.Now.Ticks; // Changed this to ticks
double dT = (now - lastTime); // / 1000
lastTime = now;
Console.WriteLine(dT);
return dT;
}
Run Code Online (Sandbox Code Playgroud)
但那仍然打印
6.35476136625848E+17 …Run Code Online (Sandbox Code Playgroud)