自动图集警告,仍然会保留原图, 自动图集也没有减少drawcall

之前是不能嵌套的,可能你的图片出现了嵌套。建议试试 2.0.5,自动图集做了不少的优化。

我是这么个使用法的

不太清楚原因,要不你提交一个 demo 试试

2.1.0 rc3 解决了这个问题。2.1.0rc2 还报这个错误,,2.0.5 没测。
一个解决办法是 每次构建前 删除自动图集 然后再添加就好了。

这个项目是在ios跑的。没法提供demo。我刚刚用同样的目录结构,同样的自动图集使用方式, 做了一个测试场景,把图片都拖到场景。打包在web-mobile后在浏览器里看到使用图集前后drawcall确实有降低

你是什么问题?

可以的

我也碰到这个问题。。。我是2.0.7版本
项目太大子目录太多 每次构建都手动重新添加要死人的。。。
@jare @huanxinyin
有没什么好点的解决方案。。。不能升2.1.0rc3

这个是纹理资源的用法不对啊,警告一般是你把打包进图集的图片资源用在了 texture2d 的属性对象上了。

不太明白。。。能不能解释详细点。。举个栗子?

还是提供下报错的demo,我帮你处理下,这样比较好理解。

我的报警告全是粒子图片,拖尾图片,我的项目drawcall高应该就是这些导致的,不知咋解决好
粒子图片 已经被打包到自动图集 AutoAtlas.pac,但由于这张原图同时被Scene或.prefab直接使用,因此原图仍然会保留一份。

如果图太大 不会打包进图集里, 也会有这样的警告。

版本2.0.9
另开了一个helloworld工程测试了下 超过1024的大图会同时报两个警告:


但看了构建结果 实际上只有一份没被打包到图集里的图。构建结果应该没问题,就是这个警告有点误导人。

我反馈一下~

1赞

警告信息不对。其实是因为超出了自动图集大小限制,所以无法被合并进去。所以 drawcall 也没减少
谢谢反馈,这个警告会在下个版本完善。

2赞

为什么使用了自动图集draw call反而更高了

Warning: 原图 db://assets/r1/fightui/autoatlas/plane/fei2/fei2_tex.png 已经被打包到自动图集 r1/fightui/autoatlas/AutoAtlas.pac,但由于这张原图同时被 db://assets/r1/fightui/autoatlas/plane/fei2/fei2_tex.json 直接使用,因此原图仍然会保留一份。

龙骨动画引用的图片无法被打包进去吗?我所有的龙骨动画都报错了

这个问题到底解决了没有。发布后UI使用的是未合并的图

用的2.1.4 cc.loader.loadRes(“farmland”, cc.SpriteAtlas, function (err, atlas) {
if (err) {
cc.error(err.message || err);
return;
}
var frame = atlas.getSpriteFrame(name);
console.log(frame);
console.log(atlas.getSpriteFrames());
centerImage.spriteFrame = frame;
}); 加载自动图集 返回的getSpriteFrames() 是空的请问是什么原因