这个问题公司大佬刚跟我啰嗦了好多遍的,但是我用的时候没有注意,就记录一下吧!
问题:图片使用自定义的material对图片纹理进行裁剪后显示不全
想要的效果:头像从远程服务器下载后切成圆角显示
出现的效果:
在查找过程中我发现替换成cocos自带的material就不会出现问题,一度以为我自己写的material出现问题,其实后面才知道默认的材质是没有对图片纹理进行操作的,所以它没问题 。
然后查找代码发现把他的packable改为false就好了。。太坑了。
部分代码如下:
loadHeadImg(){
//从远程服务器下载图片
this.loadRemoteRes(UserModel.inst.getAvatar(),(error,Texture2D:cc.Texture2D)=>{
Texture2D.packable = false;
var sprite = new cc.SpriteFrame(Texture2D);
this._headImg.push(sprite);
})
}
官方文档上说的很清楚。。贴一下:
所以没事的时候还是多看看官方文档吧!!!!