Lax动态资源加载组件

文档创建者:admin
浏览次数:711
最后更新:2025-02-05
组件文档
AI001: 组件开放 » 云端组件
作用

让资源动态加载,节省游戏内存,加载场景时间,需要使用时候再加载。

范围
可动态加载 JS,Json,动画(资源编辑器的),图片,雪碧图,音频。


配置
zhangangshan.json
zhangangshan.png
zhangangshan.MxJson

其中 zhangangshan.MxJson 内容格式为Json,可使用资源编辑器最新版本,编译动态动画  模式生成。
如使用其他编辑器,则可以通过格式自己生成:
  1. {
  2.   "动画名": "斩钢闪",
  3.   "动作列表": ["释放"],
  4.   "起始列表": [0],
  5.   "终点列表": [80],
  6.   "速度列表": [10],
  7.   "方向列表": [["上", "右上", "右", "右下", "下", "左下", "左", "左上"]],
  8.   "次数列表": [0],
  9.   "回环列表": [false]
  10. }
复制代码
代码截图:

懒加载.png

动画可使用ZIP模式,如有需求,可自行 加载动画Ex  模式 整个资源包 就为一个 zhangangshan.pak 加密包,方便管理注:需要拥有LaxZip组件才生效。


更新:2025年2月19日02:13:15
新增内置计数器自动销毁功能
注意:
在当前加载图片,加载动画,得到的纹理,或者动画名,如果对对象使用了,那么一律需要再后面加入计数器。
例如:
  1. !!资源.加载图片('hhh', 'res/ico/buff/AccountProtect.png', function(key){
  2. 调试输出(key)
  3. 图片A = 图片创建(100, 100, key)
  4. // 当给某个对象设置这个加载的纹理时候,就需要把对象加入
  5. 资源.计数器添加(图片A, key)

  6. ""})
复制代码


以上是图片加载,加载完毕后,这个图片调用了这个动态加载的key,你使用创建,或者图片设置纹理,都需要重新加入计数器。让内部重新更新它的使用时间。
动画同样道理:
  1. !!计次循环首(10, i)
  2. !!资源.加载动画('斩钢闪' + i, 'magic/xiaohuanxiong/chaojixingyunxing', function(key){
  3. let aaa = 动画创建(400, 200, '斩钢闪' + i + '_待战_右')
  4. 资源.计数器添加(aaa, key)
  5. 数组加入成员末尾(动画数组, aaa)
  6. ""})

  7. ""计次循环首结束()
复制代码
如果看不清,可以复制到IDE中查看效果更加。

以下是测试销毁时候调用方法,切记,必须在销毁对象前,将计数器移除
  1. !!键盘监听(#键盘_按下_B)
  2. // 触发按键事件 event 支持组合键 event.ctrlKey  altKey  shiftKey
  3. 资源.计数器移除(图片A)
  4. 设置对象销毁(图片A)

  5. ""键盘监听结束()
复制代码
移除动画:

  1. !!键盘监听(#键盘_按下_E)
  2. // 触发按键事件 event 支持组合键 event.ctrlKey  altKey  shiftKey

  3. let key = '斩钢闪'

  4. // 当给某个对象设置这个加载的纹理时候,就需要把对象加入
  5. !!数组循环(动画数组, i)
  6. // 注:与易语言不同的是 数组从0成员开始
  7. 资源.计数器移除(动画数组[i], key + i)

  8. 设置对象销毁(动画数组[i])

  9. ""数组循环结束()

  10. ""键盘监听结束()
复制代码

调用案例: 动态加载案例.zip (5.48 MB)



发表评论已发布 2

654531555

发表于 2024-11-22 15:51:39 | 显示全部楼层

666666666666666666666666666666

bobo1185887830

发表于 2025-2-5 13:50:22 | 显示全部楼层

完善一下 第二个参数就写个路径就好了   他通过动画名 在路径下面取找对应的 Mxjson文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则