shader文件 内存占用多的原因
最大的原因就是multi_compile变种太多。变种越多文件越大。
查看变种数量
standard shader 变种特别多,一般都不用,都自定义shader.建议一般变种数不要超过100
减少变种数量方法
减少变种数量可以多角度去处理。
一、graphic设置
限制 工程的里的烘焙方案,雾方案等。
二、shader_feature使用
例子: #pragma shader_feature _NORMALMAP
shader_feature指令的变种再没有使用的时候 ,不会编译到最终文件里,那样可以减少最终变种数量。
注意:这个功能的使用如果是5.4.4p4, 5.5.1p4, and 5.6.0b8版本或者之前的要打到assetbundle里需要 材质和shader在同一个assetbundle里。之后的版本可以用ShaderVariantCollection处理,不过shadert variant文件也要在同一个assetbundle里。(所谓的同一个assetbundle里,就是他们用的同一个包名AssetImporter.assetBundle