Unity.AssetBundle 配置式资源包处理方案

本文介绍了一种Unity AssetBundle资源包处理的折中方案,通过在模块根目录创建配置文件来定义特殊处理的目录或文件,实现资源包名的匿名处理或精细化配置。该方案包括创建CustomTag标记,按路径定义自定义值,支持多级包名定制,以优化资源打包和加载效率。
摘要由CSDN通过智能技术生成

在以往的项目制作过程中对于资源包名的处理,我感觉都不是很满意,有的项目用的资源包名简短但是,包少,但是包体很大,有的项目使用的包多,资源包名过度细化,资源包名显得又很累赘。

经过试验,得到了一种对于资源包名处理比较好的折中方案,它可以匿名处理资源包名,也可以对特定的目录,进行资源包名的配置。

具体方案如下:

1.在模块的根目录创建一个txt文件,通过这个文件定义当前这个模块的哪些目录或者哪些目录的文件需要特殊处理。

2.在设置某个模块的资源包名称时,先进行一次普通的资源包名设置(就是你平常怎么设置就怎么设置)。

3.然后读取配置文件,将配置文件中需要特殊处理的目录或者目录文件再进行一次设置。

我给配置文件定义的数据格式如下:

[CustomTag]

[Path1]=[CustomValue:Option]

[Path2]=[CustomValue:Option]

[PathN]=[CustomValue:Option]

[CustomTag1]

[Path]=[CustomValue:Option]

....

CustomTag是一个自定义处理标记,标记直到遇到下一个CustomTag为止,期间的数据全部依照CustomTag流程去处理。

一个Tag标签下面允许包含N条数据,数据的格式是 [路径]=[自定义值]

这里的 路径 就是相对于模块的路径,自定义值呢就是这个路径在处理时附加的一个单独的标记,可有可无。

我现在的使用方法是如下:

数据实例:

假设目录结构:

 

对应数据:

处理结果如下:

 = 

在打包处理时遇到Single Tag指定UI/Package目录下的文件需要单独命名处理。

文件夹特殊处理:

假设目录如下:

对应数据如下:

处理结果如下:

 = = 

=

如果你想让定义三级或者多级包名可以使用[CustomValue:Option]选项。

好了,到这儿就结束了,希望可以帮助到你。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值