uniform(name, new Uniform4f(v));
}
+void ProgramData::uniform(const string &name, const LinAl::Matrix<float, 2, 2> &m)
+{
+ uniform_matrix2(name, &m(0, 0));
+}
+
void ProgramData::uniform_matrix2(const string &name, const float *v)
{
uniform(name, new UniformMatrix2x2f(v));
}
+void ProgramData::uniform(const string &name, const LinAl::Matrix<float, 3, 3> &m)
+{
+ uniform_matrix3(name, &m(0, 0));
+}
+
void ProgramData::uniform_matrix3(const string &name, const float *v)
{
uniform(name, new UniformMatrix3x3f(v));
#include <map>
#include <msp/datafile/objectloader.h>
+#include "matrix.h"
#include "program.h"
#include "vector.h"
namespace GL {
class Buffer;
-class Matrix;
class Uniform;
class UniformBlock;
struct Color;
void uniform(const std::string &, const Vector4 &);
void uniform(const std::string &, const Color &);
void uniform4(const std::string &, const float *);
+ void uniform(const std::string &, const LinAl::Matrix<float, 2, 2> &);
void uniform_matrix2(const std::string &, const float *);
+ void uniform(const std::string &, const LinAl::Matrix<float, 3, 3> &);
void uniform_matrix3(const std::string &, const float *);
void uniform(const std::string &, const Matrix &);
void uniform_matrix4(const std::string &, const float *);