你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
发现
话题
全文搜索
登录
[LayaAir3]Laya.Loader._load2()函数中,传给AtlasInfoManager.getFileLoadPath的参数有误
目前传给 AtlasInfoManager.getFileLoadPath 的是 "formattedUrl" 这个变量,该变量已经拼接了 URL.basePath,而 AtlasInfoManager 在 fileconfig.json 中记录的是散图的“相对路径”,所以这里会取不到正确的 图集url。
应该是传入 "url" 这个变量才对。
没有找到相关结果
已邀请:
与内容相关的链接
提交
5 个回复
小孟
赞同来自:
您好,经过排查,原来的
formattedUrl是正确的。
看到您的Demo中有如下代码:
if (Laya.Browser.onMiniGame) {
console.log(`当前是微信小游戏平台`);
Laya.URL.basePath = "
http://10.3.91.42:8000";
}
我问了下大佬,解释是这样的:basePath不能这样改成远程,因为自动图集载入时,还没到这个basePath修改的地方。也就是自动图集生成映射时,这个basePath还是旧的。
正确的做法是:在开发时,资源依然放在本地,从本地引用。然后在发布时,将需要放在远端的资源分包,并设置为远程包即可。
注:分包的文档
(
https://layaair.com/3.1/doc/released/web/readme.html#26-%E8%B5%84%E6%BA%90%E5%88%86%E5%8C%85
)
小孟
赞同来自:
您好,感觉您是在调试过程中,发现的此问题。可以发一份调试demo吗,或者简述一下复现流程。
Junho
赞同来自:
你好,这是复现 DEMO。
相关说明:
# 请为【项目根目录/release/cdn】这个目录架设 http 服务(我测试时是在该目录下使用 anywhere——p.s.: 一个 nodejs 库)。然后用微信开发者工具运行【项目根目录/release/wxgame】这个工程。
# 默认情况下,运行结果应该会在屏幕中央出现一个按钮,但它只有文字,缺少 skin。因为我说的本帖子这个问题,加载相关图集失败了。
# 若要让图集加载成功,可去掉这里的注释:Main.ts 第 11 行,也就是让【EngineExt.init();】这行代码得到执行。里面做的事情就是把 formattedUrl 转换回原 url(即不带 basePath 的版本)。
p.s.: 若在原回答中直接回复,无法在社区通知中收到相关提示,所以现在才看到你的回复。
TestAtlasLoad.zip
Junho
赞同来自:
发现 release 目录被默认忽略了,已重新放入 zip 里面。请查收。
TestAtlasLoad.zip
小孟
赞同来自:
收到,非常感谢您的详细讲解,我已经成功复现问题,并按照您的更改方式解决了问题。再次感谢您的宝贵建议~
该问题目前已经被锁定, 无法添加新回复
发起人
Junho
相关问题
2.0 drawTexture color参数无效
怎样获取浏览器地址传过来的GET参数
关于shader中opengl函数问题
Text类中竟然没有pos函数的api~
请问laya.net.Loader和laya.net.LoaderManager哪些函数支持网络资源加载,加载什么类型?哪些只支持本地资源加载
layaair3 目前是否可以支持引擎外代码 的函数调用和自定义的事件触发调用?
代码重用和公共函数的疑问,在TS里怎么使用?
构造函数不能进断点
怎么停止正在运行Laya.timer.frameLoop的回调函数
drawToRenderTexture2D缺少isDrawRenderRect参数
网页跳转函数
问题状态
最新活动:
2023-12-09 15:23
浏览:
601
关注:
2
人
商务合作
5 个回复
小孟
赞同来自:
看到您的Demo中有如下代码:
if (Laya.Browser.onMiniGame) {
console.log(`当前是微信小游戏平台`);
Laya.URL.basePath = "http://10.3.91.42:8000";
}
我问了下大佬,解释是这样的:basePath不能这样改成远程,因为自动图集载入时,还没到这个basePath修改的地方。也就是自动图集生成映射时,这个basePath还是旧的。
正确的做法是:在开发时,资源依然放在本地,从本地引用。然后在发布时,将需要放在远端的资源分包,并设置为远程包即可。
注:分包的文档
(https://layaair.com/3.1/doc/released/web/readme.html#26-%E8%B5%84%E6%BA%90%E5%88%86%E5%8C%85 )
小孟
赞同来自:
Junho
赞同来自:
相关说明:
# 请为【项目根目录/release/cdn】这个目录架设 http 服务(我测试时是在该目录下使用 anywhere——p.s.: 一个 nodejs 库)。然后用微信开发者工具运行【项目根目录/release/wxgame】这个工程。
# 默认情况下,运行结果应该会在屏幕中央出现一个按钮,但它只有文字,缺少 skin。因为我说的本帖子这个问题,加载相关图集失败了。
# 若要让图集加载成功,可去掉这里的注释:Main.ts 第 11 行,也就是让【EngineExt.init();】这行代码得到执行。里面做的事情就是把 formattedUrl 转换回原 url(即不带 basePath 的版本)。
p.s.: 若在原回答中直接回复,无法在社区通知中收到相关提示,所以现在才看到你的回复。
Junho
赞同来自:
小孟
赞同来自: