libGDX游戏开发之AssetManager资源管理(十)

23 篇文章 8 订阅
23 篇文章 3 订阅

libGDX游戏开发之AssetManager资源管理(十)

libGDX系列,游戏开发有unity3D巴拉巴拉的,为啥还用java开发?因为我是Java程序员emm…国内用libgdx比较少,多数情况需要去官网和google找资料,相互学习的可以加我联系方式。

资源管理适用于

1、异步加载资源,加载时屏幕显示正在加载
2、多个类反复加载同一资源使用
3、一个存储您所有资产的地方

1、加载

写在create或者全局只执行一次的地方

AssetManager manager = new AssetManager();

// 加载
manager.load("data/mytexture.png", Texture.class);
manager.load("data/myfont.fnt", BitmapFont.class);
manager.load("data/mymusic.ogg", Music.class);

// 加载时需要添加参数时:
TextureParameter param = new TextureParameter();
param.minFilter = TextureFilter.Linear;
param.genMipMaps = true;
manager.load("data/mytexture.png", Texture.class, param);

// 也可以使用阻塞等待加载完成
manager.finishLoading();
// 上面的资源加载完成才能继续下一步

渲染中显示加载…

 public void render() {
      if(manager.update()) {
         // 加载完毕,在这里放入进入另一个场景的代码
         game.setScreen(new PlayScreen(game));// 进入玩游戏场景
      }

      // 获取加载进度
      float progress = manager.getProgress()
   }

2、获取

获取使用时:

Texture tex = manager.get("data/mytexture.png", Texture.class);
BitmapFont font = manager.get("data/myfont.fnt", BitmapFont.class);

// 判断是否加载某个资源
if(manager.isLoaded("data/mytexture.png")) {
   Texture tex = manager.get("data/mytexture.png", Texture.class);
}

从管理中卸载:
通过 AssetManager 管理的资产不应手动处理,而是调用 AssetManager.unload()!

manager.unload("data/myfont.fnt");

// 一次性清除所有
manager.clear();

// 处理也能清理所有,使用后manager将不再可用
manager.dispose();
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌康ACG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值