为什么3D游戏玩家角色在超出地图范围时会开始变形



所以在像《棘轮》这样的流行游戏中;叮当声和侠盗猎车手,当玩家飞出地图并继续飞得越来越远时,角色和所有顶点开始越来越"振动",直到角色无法识别。。。为什么会发生这种情况?

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

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

相关内容

  • 没有找到相关文章