使用NGUI制作UI时贴图出现黑线的问题
最近在做项目的过程中发现好多贴图周围会出现一些黑线,这种情况在以前并没有出现过,而且后面黑线出现的地方越来越多,所以必须要解决了。最初以为是UI资源出了问题,去看了美术资源并没有问题,然后就猜测是图片的采样模式导致的,把图片的线性采样改成了点采样,这样确实能解决一部分问题,但是项目中好多地方用到了scrollview,所以在用到scrollview的资源在拖动的时候黑线就会忽隐忽现,所以这个问题还是没解决,然后就猜测应该是NGUI在使用线性采样的时候会对周围的8个点分别进行采样,然后进行一个求平均值的算法导致的,所以后面就去改了下NGUI底层的采样的算法
这是NGUI原来的采样算法,rect对应的是一张图片上的uv值,width,height,对应的是图集的大小。我在UV采样的时候加上了偏移量
这样会导致一些很小的图片采样出现偏差显示就不完全,你可以加上一个标志位当有黑线出现的图片才采用采样偏移,在UiSpriteInspector中加上一个单选框就可以了,这样就解决了贴图出现黑线的问题。
最后我们还发现是由于我们采用的第三方的打包工具,在打包时有个选项叫premultiplyAlpha,这个选项会在打包时对图片的边缘进行多次采样,然后图片的边缘就会出现黑线了。
你们可以看下项目中的打包工具是否用到了这个选项,或者是不是第三方的打包工具,如果是原生的打包工具还存在黑线就可以用上面说到的方法去解决
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。