0

所以在Ratchet & Clank 和Grand Theft Auto 等流行游戏中,当玩家飞出地图并越走越远时,角色和所有顶点开始越来越“振动”,直到角色无法辨认。 . 为什么会这样?

4

1 回答 1

1

我的猜测是,这是由于浮点数不准确造成的。随着角色离地图原点越来越远,其顶点(很可能是单精度浮点数)的 (x, y) 坐标会越来越大。

这里的问题是单精度浮点只能正确表示十进制表示中大约 7 个正确的有效数字。因此,如果字符的 x 位置开始接近 10,000,000,则介于 10,000,000 和 10,000,001 之间的所有顶点实际上将被捕捉到相同的 x 值(单精度浮点可表示的最接近的值)。这种“捕捉”(或“舍入误差”)是导致顶点未显示在预期位置的原因,因此会产生诸如振动或巨大变形之类的伪影,从而使角色不再可识别。

于 2013-09-04T03:10:21.877 回答