fix some bugs, new GLSL class