Property definitions

gamnit $ UniformMap :: defaultinit
# Map to organize `Uniform` instances by their name
class UniformMap
	super ShaderVariableMap[Uniform]

	redef fun provide_default_value(key) do
		return new InactiveUniform(program.gl_program.as(not null), "", -1, 0)
	end

	redef fun max_name_length do return glGetProgramiv(program.gl_program.as(not null), gl_ACTIVE_UNIFORM_MAX_LENGTH)

	redef fun [](key)
	do
		var item = super
		if key isa Text then item.location = program.gl_program.uniform_location(key.to_s)
		return item
	end
end
lib/gamnit/programs.nit:545,1--561,3