]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/programdata.h
Some tweaks to vector component handling
[libs/gl.git] / source / materials / programdata.h
index dbbf5f488d6173e2b9436df925d81bdce2db8f16..bc98847b26417f84dd18f1f3e17970276750f3e3 100644 (file)
@@ -267,7 +267,7 @@ public:
 
 template<typename T, unsigned N>
 void ProgramData::uniform(Tag tag, const LinAl::Vector<T, N> &v)
-{ uniform(tag, TypeTraits<LinAl::Vector<T, N>>::type, 1, &v.x); }
+{ uniform(tag, TypeTraits<LinAl::Vector<T, N>>::type, 1, &v[0]); }
 
 template<typename T, unsigned R, unsigned C>
 void ProgramData::uniform(Tag tag, const LinAl::Matrix<T, R, C> &v)
@@ -275,7 +275,7 @@ void ProgramData::uniform(Tag tag, const LinAl::Matrix<T, R, C> &v)
 
 template<typename T, unsigned N>
 void ProgramData::uniform_array(Tag tag, unsigned n, const LinAl::Vector<T, N> *v)
-{ uniform(tag, TypeTraits<LinAl::Vector<T, N>>::type, n, &v[0].x); }
+{ uniform(tag, TypeTraits<LinAl::Vector<T, N>>::type, n, &v[0][0]); }
 
 template<typename T, unsigned R, unsigned C>
 void ProgramData::uniform_array(Tag tag, unsigned n, const LinAl::Matrix<T, R, C> *v)