fix use of deprecated texture2d glsl functions
singletonized (invented that word!) all systems