unity 地图有接缝的问题及解决方法
(2016-10-24 17:34:14)分类: unity3d |
今天,发现我们做的 DEMO中,
地图有接缝,
地图移动时,我在 地图上,挂了一个脚本,
使其每帧,加上一个偏移量,
之后,我在游戏中暂停,观察地图的坐标,
发现,是因为坐标的问题,产生的接缝,
也就好比,本来一个物体的 位置应该是 20,
但是,数值是 19.91 ,就会出现接缝。
此时,我还没有意识到问题真正出在哪里。
于是,我将地图移动的脚本屏蔽了,换成所有的拼接地图,
在一个脚本中,加上偏移量,
这就像是
float offset = Time.delta * mapSpeed;
所有的地图,都加上这个offset,
之后,运行,还是会有接缝,
突然间,开窍了。
float 本来就不是精确的,float 有偏差,
不断的进行加法运算,偏差会累积。
地图和地图之间有接缝,是因为相对的位置有偏移造成的,
所以,问题的关键,是相对位置。
不是所有的地块都加上某个偏移值,
是让第一个地块进行偏移,
其他地块,根据其坐标,加上相对位置的偏移,
这样,就算有轻微的误差,但是,相对偏移的误差不会大到出现接缝,
每一帧,都是根据第一个地块的相对位置,
这样,误差也不会累积。
造着这个思路,我修改了代码,
装上真机后,问题解决了。
后一篇:unity 抛物线轨迹的模拟