+ uniforms[name] = uni;
+
+ modified = true;
+}
+
+void ProgramData::uniform(const string &name, int v)
+{
+ uniform(name, new Uniform1i(v));
+}
+
+void ProgramData::uniform(const string &name, float v)
+{
+ uniform(name, new Uniform1f(v));
+}
+
+void ProgramData::uniform(const string &name, float v0, float v1)
+{
+ uniform(name, new Uniform2f(v0, v1));
+}
+
+void ProgramData::uniform2(const string &name, const float *v)
+{
+ uniform(name, v[0], v[1]);
+}
+
+void ProgramData::uniform(const string &name, float v0, float v1, float v2)
+{
+ uniform(name, new Uniform3f(v0, v1, v2));
+}
+
+void ProgramData::uniform(const string &name, const Vector3 &v)
+{
+ uniform(name, v.x, v.y, v.z);