implemented other types of shader uniforms