两个地形精灵拼接出现缝隙

模仿FlappyBird。
草坪素材分辨率:410×137;
场景尺寸:640×1136;
生成2个草地精灵land1,land2,,素材稍小,故缩放为原来的2倍(setScale(2));
land1、land2设置锚点为Vec2(0, 0),land1位置为屏幕左下角(land1->setPosition(Vec2(0, 0)););
land2位置为land2->setPosition(Vec2(cs.width*2, 0)); //cs.width是草地精灵的原始宽度,即410;
然后分别设置了2个MoveBy动作,land1经过3秒走完一个放大后的自身宽度,land2经过6秒走完两个放大后的宽度。并加入一个每3秒的定时器,将以出场景的草地的x坐标设置为cs.width的4倍(正好是land2的初始位置),并继续按原速度移动。
问题:两个精灵拼接出现缝隙,时大时小,走过几个之后可能就又没了,之后又有可能出现。
已经将land1,land2都设置为不抗锯齿,并用PS重绘了草地素材(因为怀疑抠原始素材时不精确,造成分辨率不是整数),但仍然会出现缝隙。将重新定位的位置减少1、2个像素仍然不行。
是因为缩放的缘故吗?还是别的,求大神赐教!
附GIF

先占个沙发:2:

地图 CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 修改为 1 即可解决.:14::14: 全局搜索这个宏定义。

请问这个具体是什么意思呢

:14: 这个就是修复缝隙出现竖线的解决办法啊。。。看英文意思。。。。

首先不建议你用2楼的方法修改CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL,这是个全局宏,会影响所有的纹理
你可以先用大图试下,就是不用做setcale(2)的图,看看是不是缩放造成的精度损失。
然后再检查下素材,看看是不是扣的时候图片边缘有透明区域。
这种抖动一般来说是素材的问题

我有2个拼接的背景 然后正常的移动 但是在某一时刻的时候 会出现缝隙 但是在过一会儿 又接上 这个方法貌似也无法解决我的问题呀- -好奇怪

而且我的2个背景现在我已经是自己用layer拉的渐变 颜色值也是相对应拼接上的

这个实现思路明显不安全。 换个思路吧。精灵1移动的时候,精灵2去跟随,反正都是靠在一起的直线位移。

精灵滚动 需要 开启抗锯齿 getTexture().setAliasTexParameters()

饿。那就是开启抗锯齿或者放置的时候,压一个像素。比如你的图片是500*500.那你第二张地图放到499的坐标上

会不会是动作同步的问题。 前面的精灵移动几个像素后,后面的可能才开始移动。