]> git.sesse.net Git - movit/blobdiff - effect.cpp
In YCbCrInput, fix an issue where offsets would be treated as equal even if their...
[movit] / effect.cpp
index 060bf7dd35fca361c4c160c6b71cf242104019f8..3446b42c05baab5553ae83f71c69d6ef8467774f 100644 (file)
@@ -61,6 +61,7 @@ void Effect::register_int(const string &key, int *value)
 {
        assert(params_int.count(key) == 0);
        params_int[key] = value;
+       register_uniform_int(key, value);
 }
 
 void Effect::register_float(const string &key, float *value)
@@ -165,6 +166,16 @@ void Effect::register_uniform_vec4(const std::string &key, const float *values)
        uniforms_vec4.push_back(uniform);
 }
 
+void Effect::register_uniform_float_array(const std::string &key, const float *values, size_t num_values)
+{
+       Uniform<float> uniform;
+       uniform.name = key;
+       uniform.value = values;
+       uniform.num_values = num_values;
+       uniform.location = -1;
+       uniforms_float_array.push_back(uniform);
+}
+
 void Effect::register_uniform_vec2_array(const std::string &key, const float *values, size_t num_values)
 {
        Uniform<float> uniform;
@@ -175,6 +186,16 @@ void Effect::register_uniform_vec2_array(const std::string &key, const float *va
        uniforms_vec2_array.push_back(uniform);
 }
 
+void Effect::register_uniform_vec3_array(const std::string &key, const float *values, size_t num_values)
+{
+       Uniform<float> uniform;
+       uniform.name = key;
+       uniform.value = values;
+       uniform.num_values = num_values;
+       uniform.location = -1;
+       uniforms_vec3_array.push_back(uniform);
+}
+
 void Effect::register_uniform_vec4_array(const std::string &key, const float *values, size_t num_values)
 {
        Uniform<float> uniform;