同一个主图,切图切两个,再按原位子放回,有一条线

如何处理
渲染模式的问题么
还是显示器分辨率的问题么

cc.FIX_ARTIFACTS_BY_STRECHING_TEXEL = 1
设置一下这个试试。

cc.director.setProjection(cc.Director.PROJECTION_2D);
cc.FIX_ARTIFACTS_BY_STRECHING_TEXEL = 1

效果好很多,很淡的线
渲染模式调整下,也有影响

一般做法是 切两张有交集的图片!然后重叠!

好顶赞:2::2::2::2::2::2::2:

本来想回复楼主的,不过估计效果不好,还是回复你好了。
首先强烈不建议打开FIX_ARTIFACTS_BY_STRECHING_TEXEL宏,这个宏的作用是在渲染纹理时强制在纹理上下左右各偏移一个像素来解决图片渲染时边缘的黑边问题。但这个宏的影响是全局的,不建议因为2张图片的问题就修改整个程序所有图片的纹理顶点信息。
再说说这个问题原因在哪。
这个问题最可能的原因其实是美术切图问题。先让美术检查图片尺寸是不是正确,是不是切的时候少了一个像素,再检查切的时候边缘是不是有空白或是半透明区域。
如果美术切图没问题还是有黑边,那么检查对应Texture2D对象的抗锯齿打开了没。
如果抗锯齿也打开了还是不对,再把摄像机改成PROJECTION_2D模式,在3D模式下图片移动时可能会因为坐标计算的精度损失导致黑边。
如果改了摄像机模式还是不对,那我也不知道为什么了。
特意回这个帖子是因为看到不止一次有人问这个问题了,网上百度到的答案大多数是开FIX_ARTIFACTS_BY_STRECHING_TEXEL宏,要么是改摄像机模式,没人提过美术切图的原因,但实际上我遇到过这个问题大多数是靠美术修正切图解决,而且解决这个问题也不用刻意把图切大一圈,这些都治标不治本。

非常感谢
var rack_part1 = new cc.SpriteFrame(res_run01.rack_p,cc.rect(0,129,391,60));
var rack1 = new cc.Sprite(rack_part1);
this.addChild(rack1,30);
系统重装过,书签都没了,忘记论坛了
后来我改用SpriteFrame来切图了,效果还不错,视觉上看不到黑线

提个建议 所有坐标不要带小数:2: