[LayaAir 2.0]layabox2.0,图集资源地址url缓存错误,导致texture恢复位图资源的时候,加载不到图片资源

问题是这样产生的:
调用scene.destroy销毁场景后,然后调用scene.gc去回收资源,然后调用scene.open打开关闭的场景发现原来图集的资源没有显示。
例如Scene.open("a");
Laya.timer.once(2000,function(){//2s后关闭场景
Scene.destroy("a");
Scene.gc();
Scene.open("a");//打开后,图集里的资源丢失,其他资源还在
});
问题追踪:
我发现调用gc之后,位图资源回收掉了,但是texture壳还在,但是texture里面缓存的url错误。导致第二次Scene.open()的时候,图集没办法恢复。

问题定位:
As3版本引擎,Loader类第370行,这句代码 var url:string = URL.formatURL(directory + name)错误,然后第375行tTexture.url = url,texture缓存了错误的资源地址,导致texture恢复资源的时候Laya.loader.load()这个url,并不能加载到正确的资源。正常来说第375行应该是tTexture.url = directory + name只设置相对路径就正确了。
 
附件已经上传
已邀请:

Aar0n

赞同来自:

更新引擎,新版的是修复了这个问题的。

该问题目前已经被锁定, 无法添加新回复

商务合作
商务合作