大厅+子游戏模式 资源加载策略讨论

首先我将游戏分为大厅公用模块和子游戏模块,对资源进行分组然后进行分步分功能加载.

1.每个资源组公用脚本,相当于每个资源组的配置文件,我想的是直接加载对应的一个预制体就想当与加载了整个资源组

@class
export default class AssetLoaderConfig extends cc.Component{
    @property([cc.JsonAsset])
public json:cc.JsonAsset[]=[]
    @property([cc.Prefab])
public prefabcc.Prefab[]=[]
    @property({type:[cc.AudioClip]})
public audioClip:cc.AudioClip[]=[]
    @property([cc.SpriteFrame])
public spriteFrame:cc.SpriteFrame[]=[]
}

2.我建立了统一的资源管理模块用来加载和管理资源组。AssetLoaderModule
整个目录结构

  • assets
    ++ outAssets //存放游戏资源组资源
    +++ game01 //game01用的图片声音预制体等资源
    +++ game02 //game02用的图片声音预制体等资源
    +++ 。。。。。
    ++ resources
    +++ game01 //存放game01的资源组
    ++++ Game01.prefab
    +++ game02 //存放game02的资源组
    ++++ Game02.prefab

那么问题来了
1.我打包后相较于资源方在 resource下确实减少了 很多资源的json文件,但是整个包的容量并没减少,好像因为我拖到预制体上的原因,我预制体大了。我这么做起到优化作用了吗???
优点:打包后资源json文件少 项目内可以直接得到图片不许要异步 资源释放加载好管理
缺点:容量方面我简单测试并没有减少,并不知道是否是我测试文件太少,加载资源组不能制作进度条
2.由于我是加载后自行进行资源管理会不会反而存在浪费资源的情况
对于资源组我建立相对应的数据表存放在 AssetLoaderModule中 但是我发现在cc.loader中同样存在一份,会不会浪费了内存呢?
3.有没有更好的优化建议呢?比如说怎样直接生成资源组的配置

手动置顶求问

我都问了半个月了,感觉cocos大神都去做u3d了

u3d开发插件容易很多