we should introduce "shared shader functions", by linking multiple shaders to a single program. for example a linearizeZ function in a depth.frag...