【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
整套系统分为依赖分析、资源打包、数据压缩、数据加密,以及对应的数据解密,数据解压,依赖资源加载。
依赖分析
主要使用AssetDatabase.GetDependencies进行资源依赖分析,构建依赖树。
资源打包
根据已构建的依赖树进行资源打包,使用BuildPipeline.PushAssetDependencies和BuildPipeline.PopAssetDependencies,使assetbundle的依赖资源分离打包。
数据压缩、解压
使用LZ4开源库,编译成native plugin。
数据加密、解密
使用openssl库里的AES算法,也是编译成native plugin。
资源加载
加载资源时,先加载该资源的所有依赖资源。 在加载每个资源之前,会先把数据加载到内存中进行解密和解压。