我有一个小样本模拟,把它想象成把球扔到空中。我希望能够“加速”模拟,因此它将在更少的循环中完成,但“球”仍然会像以正常速度(1.0f)一样高地飞到空中。
现在,模拟在更少的迭代中完成,但是球的坐标要么太高要么太低。这里有什么问题?
static void Test()
{
float scale = 2.0f;
float mom = 100 * scale;
float grav = 0.01f * scale;
float pos = 0.0f;
int i;
for (i = 0; i < 10000; i++)
{
if (i == (int)(5000 / scale)) // Random sampling of a point in time
printf("Pos is %f\n", pos);
mom -= grav;
pos += mom;
}
}