update control, add more functionality, and edit glsl