记录一次静态合批失败原因:
因为项目中场景涉及到了变色,使用的方式是同一shader改变,所以需要获取Material改shader值。然后导致实例化了一份material如下图
这种获取方式会导致实例一份material,FrameDebug上的表现就是:
说是拥有不同的materials。
解决思路,不去获取material导致实例材质,以下两种解决方案:
1 : 不通过.material 获取材质,使用.sharedMaterial 获取材质。
缺点:更改的是资源文件的shader值,也就是说,所有引用这个这个材质的物体,都会发生改变(重新进场景要重新赋初始值)
2: 通过 MaterialPropertyBlock (属性块)来改变,具体操作如下:
2021/4/13,注意 :物体是否静态,静态会造成某些效果不可用