91 lines
2.5 KiB
Markdown
91 lines
2.5 KiB
Markdown
### 功能说明
|
||
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();
|
||
```
|
||
注:用于调试时观察是资源是否正确释放 |