[]Animation 的createFrames 使用已经加载的图集缓存动画失败
我load图集之后, 使用Animation的createFrames缓存动作, api里写着可以使用已经加载的图集动画,结果却又去下载了,地址当然不正确了,导致无法下载.代码大致如下:
Laya.loader.load('player/player.json',Laya.Handler.create(this, this.onLoaded),null);
----onComplate:
Laya.Animation.createFrames(['player-left.png'], "walk-left");
Laya.loader.load('player/player.json',Laya.Handler.create(this, this.onLoaded),null);
----onComplate:
Laya.Animation.createFrames(['player-left.png'], "walk-left");
没有找到相关结果
已邀请:
要回复问题请先登录
2 个回复
kitechasingkid
赞同来自: Monica 、nimo
(1)chrome默认是不允许加载本地json文件的,所以如果你用chrome打开file开头的链接,json是加载不了的,我为了调试还起了个http服务。
(2)加载动画时地址是有要求的,见以下代码片段(laya.net.Loader): 如果你的json文件中没有meta.prefix,那么地址与json文件的位置有关,比如你的json文件的地址是res/package.json,那么每张小图的地址为res/package/<小图的文件名>;
如果你的json文件中有meta.prefix,那么地址则为URL.basePath + prefix + <小图的文件名>。
这个文档里讲的不是很清楚,建议补充下。
(3)我是一开始就拿到拼接好的图片的,所以反而写了个简单脚本去生成json文件,建议这个可以作为小工具加到IDE中。
cuixueying
赞同来自:
关于createFrames的用法我们又实测了一遍,并未发现你所表达的问题,如果可以的话可以将您有错误的源码以附件的形式上传,我们好方便快速的查找问题。
其他案例请参考:LayaAir开发实战-------Role.as文件也有相关使用方式,仅供参考。