The shader is a mixture of
hull and domain (tessellation)
geometry (extra polygons)
3.0: 2.5 + interpolators10 + samplelod + fragcoord (also contains fragdepth)
3.5: 3.0 + interpolators15 + mrt4 + + integers + 2darray + instancing
4.0: 3.5 + [mrt8] + geometry
4.5: 3.5 + compute + randomwrite (so it means it has no 4.0 features)
4.6: 4.0 + [cubearray] + tesshw + tessellation (so it means it has no 4.5 features)
5.0: 4.0 + 4.5 + 4.6 + [interpolators32] (it has everything)
[Pink] : Mobile won’t implies it
info from @Aras
To prevent shader from code upgrade
Since there are so many detailed tutorial about compute shaders so I’m not going to explain every line of the code. Here are just some basic concept.
Vert and Frag + Zwrite On in Deferred are not dynamically batched
(it means transparent shaders will be batched)
unless the shader writes into GBuffer. But then, putting “DisableBatching” = “True” into this shader, it is still batched!