Unity Error 打AssetBundle时出现 An asset is marked with HideFlags.DontSave but is included in the build

出现这种情况的原因是因为项目中有些资源被脚本设置了hideFlags属性为DontSave

解决方案:

全局搜索脚本hideFlags看看有没有代码设置资源的地方。类似图中

 

如果出现 hideFlags = HideFlags.DontSave;这种用法就查找这个脚本设置哪个资源。

此时我们需要将这句代码去掉,然后找到资源写个编辑器脚本将该资源的hideFlags属性改为None:

 一般容易出问题的是材质球或者图片等,因为上面代码只要被运行过一次,会直接导致资源的属性被保存到项目工程内的资源mate文件中。这样打资源包的时候就会出现问题。

总结:

最快速的方法是写个编辑器脚本查找所有资源(资源太多,可以只查找打包出现错误的资源)

执行上面的逻辑。这样能解决问题 、当然最好是查一下这些预制件或者资源为什么会被设置为DontSave.避免出现误修改的情况。

HideFlags 的值代表的意思,大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值