UH3L8——编辑器功能—设置默认资源
UH3L8——编辑器功能—设置默认资源
前置知识点
- C#文件操作
- Unity编辑器相关 [MenuItem()]、Selection、AssetDatabase
为何要设置默认资源
发布后,让不需要更新的AB包或者第一次启动必须要使用的AB包不从服务器上下载,直接从StreamingAssets文件夹内读取
目标
将编辑器中选中的AB包资源文件(无后缀名的文件),复制到StreamingAssets文件夹内,打包后可以随游戏程序一起发布作为默认资源
实现流程
-
使用特性为菜单栏添加一个选项
AB包工具/移动选中资源到StreamingAssets中
,从选项里触发该功能MoveABToStreamingAssets()
-
MoveABToStreamingAssets
内- 通过编辑器
Selection
类中的方法,获取在Project窗口选中的资源,如果未选中资源就不执行后续逻辑直接返回出去 - 遍历选中的资源对象,通过
AssetDatabase.GetAssetPath
获取资源的路径,根据该路径截取文件名 - 检查该文件名是否有
'.'
,如果有说明有后缀名,说明不是AB包,跳过该文件,检查下一个文件 - 使用
AssetDatabase.CopyAsset
来讲AB包文件复制到StreamingAssets文件夹下 - 读取所有赋值到StreamingAssets文件夹下的AB包文件,获取其文件名,大小,MD5码,生成默认资源对比文件到StreamingAssets文件夹
- 刷新编辑器窗口
- 通过编辑器
1 | using System.IO; |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!