资源加载
资源加载
- 资源的使用形式
- 资源的加载方式
- 资源的缓存机制
- 资源的打包策略
常用的资源路径
dataPath: 对应Assets
steamingAssets
常用加载方式:
- 编辑器: AssetDataBase
- 运行时:
- 公有字段拖拽赋值
- Resource:放到该文件夹下运行时可以简单加载卸载,缺点是该文件夹下的资源都会被打到包里,打成一个单独的资源,不利于拆包,无法增量更新
- AssetBundle:包体拆分,可热更,运行时按需加载和卸载,加载时根据情况使用同步还是异步,可做资源加密,加载AB时,如果没有正确加载依赖的AB可能导致资源缺失显示错误;卸载AB时,可能没有正确卸载掉依赖的资源,造成资源泄漏
- Addressable:新技术
- 实现:
- editor下,
GameObject obj = AssetDataBase.LoadAssets<GameObject>('Assets/xxx.prfab')
; - Resources,
GameObject obj = Resources.Load<GameObject>('xxx.prefab')
, 路径是Resources下的一级目录 - AB,通过AB包名,加载Ab后,bundle.LoadAssets(“xxx.prefab”)
- editor下,
Addressable
2018后的新方式,有点事自动管理依赖,自动管理内存,对管理资源自动引用计数