std::map<std::string, float> float_parameters;
std::map<std::string, std::array<float, 3>> vec3_parameters;
std::map<std::string, std::array<float, 4>> vec4_parameters;
std::map<std::string, float> float_parameters;
std::map<std::string, std::array<float, 3>> vec3_parameters;
std::map<std::string, std::array<float, 4>> vec4_parameters;