def []=(uniform, value)
      uniform = uniform_name_from_symbol(uniform) if uniform.is_a? Symbol

      # Ensure that the program is current before setting values.
      needs_use = !current?
      enable if needs_use
      set_uniform uniform_location(uniform), value
      disable if needs_use

      value
    end
def []=(uniform, value)
      uniform = uniform_name_from_symbol(uniform) if uniform.is_a? Symbol

      # Ensure that the program is current before setting values.
      needs_use = !current?
      enable if needs_use
      set_uniform uniform_location(uniform), value
      disable if needs_use

      value
    end
Set the value of a uniform.

 @param uniform [String, Symbol] If a Symbol, :frog_paste is looked up as "in_FrogPaste", otherwise the Sting is used directly.
 @param value [Any] Value to set the uniform to

 @raise ShaderUniformError unless requested uniform is defined in vertex or fragment shaders.