ActionScript
TypeScript
JavaScript

游戏资源加载与资源管理

发布时间:2017-01-12

LayaAir的资源加载是通过laya.net.Loader这个类来加载。分为单一资源加载和多中资源类型加载。

Loader 类可用来加载文本、JSON、XML、二进制、图像等资源。


1、单一资源加载。

    新建LayaAir空项目,然后在bin/h5/res/apes目录下放入一张名字为monkey0的图片。

blob.png

这个例子我们是通过Laya下的loader这个对象来加载,通过api可以看到这是一个LoaderManager的实例,LoaderManager 类用于批量加载资源、数据。

批量加载器,单例,可以通过Laya.loader访问。

多线程(默认5个线程),5个优先级(0最快,4最慢,默认为1) 某个资源加载失败后,会按照最低优先级重试加载(属性retryNum决定重试几次),如果重试后失败,则调用complete函数,并返回null。


2、复杂数据类型的加载。

blob.png

    上图的这个例子中首先声明了一个数组,数组中存储的是Object的类型,键值为资源的url和资源类型。在API中LoaderManager的load方法对url参数解释如下:

blob.png

由此我们可以知道,加载复杂的类型的资源我们可以这样传递参数。



资源管理

资源加载到一定的程度一定会造成内存的紧张,因此合理的进行资源管理尤其重要。

资源加载器中提供了资源释放的接口,资源的释放可以通过调用clearRes方法来实现。

blob.png