3.x,100%必现,无法动态加载SpriteAtlas的所有SpriteFrame,附demo工程

版本creator 3.2.1

目的:
写一个component,加一个SpriteAtlas的property,然后在onLoad中使用这个SpriteAtlas的所有frames。

bug现象:
当在编辑器中把图片类型改成:
1,raw类型,100%报错,说frame超出纹理大小
2,texture / sprite-frame类型,不报错,但最终Atlas中只有一个frame,这明显不对
反正,用啥类型都成功不了。

我个人觉得应该用raw是对的,但是目前是报错的
另外关于图片type的说明有文档吗?求链接。

另:工程里脚本挂在了Canvas上

TestLoadSpriteFrame.zip (1.3 MB)

我发现plist文件里的key没有带后缀,我手动加上后缀之后就能读取到了
我在2.4.5版本尝试读取一样的图集文件,发现key没后缀也可以读取到

测试了一把

我的图集是用TexturePacker生成的,勾选了
image
也就是库拉大佬说的有后缀和没后缀,
发现有后缀时,确实可以了。所有frames可用了,无后缀时,就只有一个frame。

不过需要注意的是,图片类型必须用texture,用raw依然报错。

解决方案就是用type: texture,然后TP导出plist时,不能去掉图片后缀。。。

官方不考虑兼容下有后缀和没后缀?
这种性质的错误完全没头绪。。。难顶。。

谢谢库拉大佬。

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