Files
heros/doc/core/common/loader.md

91 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### 功能说明
Oops Framework资源管理模块主要处理游戏各种类型的资源的加载与释放功能。
### 使用说明
##### 加载远程资源
```
var opt: IRemoteOptions = { ext: ".png" };
var onComplete = (err: Error | null, data: ImageAsset) => {
const texture = new Texture2D();
texture.image = data;
const spriteFrame = new SpriteFrame();
spriteFrame.texture = texture;
var sprite = this.sprite.addComponent(Sprite);
sprite.spriteFrame = spriteFrame;
}
resLoader.loadRemote<ImageAsset>(this.url, opt, onComplete);
```
##### 加载资源包配置信息
```
var serverUrl = "http://192.168.1.13:8082/"; // 服务器地址
var md5 = "8e5c0"; // Cocos Creator 构建后的MD5字符
await resLoader.loadBundle(serverUrl,md5);
```
##### 加载单个资源
```
var path = "model";
resLoader.load(path, sp.SkeletonData, (err: Error | null, sd: sp.SkeletonData) => {
if (err) {
console.error(`资源不存在`);
return;
}
this.spine.skeletonData = sd;
});
```
加载其它bundle中资源
```
var path = "model";
resLoader.load("bundleName", path, sp.SkeletonData, (err: Error | null, sd: sp.SkeletonData) => {
if (err) {
console.error(`资源不存在`);
return;
}
this.spine.skeletonData = sd;
});
```
##### 加载一个文件夹中的资源
```
/** 加载进度事件 */
var onProgressCallback = (finished: number, total: number, item: any) => {
console.log("资源加载进度", finished, total);
}
/** 加载完成事件 */
var onCompleteCallback = () => {
console.log("资源加载完成");
}
resLoader.loadDir("game", onProgressCallback, onCompleteCallback);
```
##### 释放一个资源
```
resLoader.release("model", "resources");
```
注:第二个参数"resources"为默认值为引擎默认bundle。如果需要释放其它bundle里的资源修改此参数即可
##### 释放一个文件夹的资源
```
resLoader.releaseDir("model", "resources");
```
注:第二个参数"resources"为默认值为引擎默认bundle。如果需要释放其它bundle里的资源修改此参数即可
##### 获取缓存中资源
```
resLoader.get("common/anim/button_scale_start", AnimationClip, "resources")
```
注:第三个参数"resources"为默认值为引擎默认bundle。如果需要获取其它bundle里的资源修改此参数即可
##### 打印缓存中所有资源信息
```
resLoader.dump();
```
注:用于调试时观察是资源是否正确释放