spine截取的静图有黑边

  • Creator 版本: 2.1.2
  • 目标平台:chrome浏览器
  • 编辑器操作系统: macOS Monterey 12.0
  • 重现概率: 必现

第二张图里面,前面的人物是放到prefab里面的spine动画,显示没有问题;后面的人物用第一张图里所示的方法,将此spine进行了截图并存到了sprite里面,但是如绿框所示,有黑线,该怎么去掉呢?

参考一下这个解决方案,在代码中开启 texture 的预乘处理:


如上图所示,通过在代码中开启texture预乘,并且sprite的blend模式设为(one,one_minus_src_alpha)的方式解决了黑边问题,但是又出现了过度曝光的新问题,这个该怎么解决呢?

这个是因为设置了透明度的缘故,但要设置透明度又没有黑边,该怎么解决呢?

之前测试过截图时没有这个问题,是否给个 demo 看看?

这个是截图的bug,你要自己处理下截取后data,比如可以把所有透明度不为0且边缘4个点也不0的点透明度设置为255

大大,具体怎么改呢?请见谅,首次操纵,不知道细节!我现在只知道texture.readPixels()可以获取到其原始数据

NewProject_1.zip (2.3 MB)

这是我摘出来的demo,拜托啦~~

按照第二张图修改了sprite的blend方式,黑边是没有了。但是后面背景变成黑色的了,而且设置透明度无效,这个原因又是啥呢?

如下图,把 spien 组件的预乘贴图功能开启来就可以解决问题。


代码中这两句就不用了

非常感谢,确实能解决这个问题!

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。