split of shader code and optimize a bit