So I'm looking to redo shader so it's also in our new world, but I ran into some trouble.
Issue 1 is that it really appears to be two separate shaders glued together. We should instead create a single shader, and then a way to combine multiple shaders together.
Issue 2 is that it seems as if one of the input parameters is essentially being ignored - instead we're using the hardcoded self.vshader_source.
Issue 3 is that there doesn't seem to be a way to remove a shader from a program!
I have to say that I also don't understand the role of the "uniform tex1 and tex2" referred to here.