libgdx:[32]资源加载 追踪

2024-10-13 23:13:33

关于资源加载与追踪 page 123

工具/原料

libgdx

Loading and tracking assets 加载并追踪资源

1、建好资源的下一步就是让我们的图集对游戏可用并加载他们。用下面的代码加载一个资源:Texture texture = newTexture(Gdx.files.internal("texture.png"));

libgdx:[32]资源加载 追踪

2、 在前面的示例中我们让libgdx获得一个texture.png文件的内部文件管理器,引用一个internal文件意味着libgdx必须扫描文件的路径,它将扫描整个assets文件。然后handle将作为一个参数传递给Texture的构造器,构造一个texture的实例引用,然后他就能使用下面的代码被直接绘制在屏幕上了。batch.draw(texture, x, y);

libgdx:[32]资源加载 追踪

3、显然的使用asset很容易,但是使用多个将变得复杂。Android项目上将更加糟糕。就像我们前面章节中所学的有暂停和恢复事件,这将会出现上下文的丢失。在android上出现上下文丢失意味着an颊俄岿髭droid将你的资源所占用的内存强制释放啦,在上下文丢失发生后直接访问你的资源将会直接引起应用的resume(重启)。为了避免这种情况你必须在访问你的游戏资源之前就重新加载你的资源,此外要记得在你的某一资源不需要再使用时要释放资源内存:通过条用下面所示代码中的方法:texture.dispose();

libgdx:[32]资源加载 追踪

4、你可能已经意识到在使用大量的资源时,你还要考虑加载,重载 ,卸载你使用的资源,这并不是一件令人愉快的事情。尤其是这些工作量瓴烊椹舟将会在有新的资源加入时增加的很快。这正是Libgdx 提供管理器来管理这些工作的原因,它叫做AssetManager .AssetManager.它允许你把加载一个队列的资源的任务委派给管理器。管理器支持异步加载新的资源,这意味着加载资源的进程会在后台运行你不必停下你的updateing或者在屏幕上的rendering。这是一个非常有用的功能;例如,他将允许我们绘制并升级我们的进度条来显示当前加载的状态。虽然如此,我们的资源的实际加载任然要由我们自己来做。处于这个原因,我们需要创建一个资源加载类,在逻辑单元上帮助我们加载我们的资源并让我们的资源在游戏的任何地方的代码都可以访问到资源。

libgdx:[32]资源加载 追踪
猜你喜欢