added gl.setShaderProgram()