cocos creator 图片黑边, 灰边问题的解决

软件环境:cocos creator 2.0

cocos creator 中的图片或多或少有些黑边或灰边的问题,一般是在透明图片的边缘。

图片来自网络

问题是由于纹理缩放边缘插值计算导致的,cocos2d—x中精灵的blend源默认应该是one,但是cocos creator不是。

Cocos2d-x 中的设置更加智能,默认对图片进行 WebGL 预乘,如果发现贴图是已经预乘过的,那么 Sprite 就使用 ONE 作为 blend src,否则使用 SRC_ALPHA。这里带来的问题是,贴图切换,用户手动修改 Blend function 的冲突,cocos2d-x 在切换贴图的时候,会自动根据贴图的预乘属性重新设置 Blend function,而不管用户是否手动修改过,这里就有潜在的 bug 可能。

解决方案一:

利用打包工具 TexturePacker 将资源打包成图集,打包过程中设置成预乘:

图片来自网络

 

解决方案二:

在cocos creator编辑器的sprite 设置为图集里边的图,然后Blend/SrcBlendFactor设置为one :

图片来自网络

方案三:通过代码修改sprite的混合模式:

node.getComponent(cc.Sprite).srcBlendFactor = cc.macro.BlendFactor.ONE;

 


【互动教程列表,真正的手把手教学模式,点击或扫码下载】

互动教程:手把手带您学习IT职场技能   
互动教程 for Xcode9 iOS开发中的神兵利器 互动教程 for Swift4 互动教程 for Photoshop Script

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李发展

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值