lots of work on shaders