]> git.tdb.fi Git - libs/gl.git/blobdiff - source/lighting.h
Create ProgramData for materials and lights
[libs/gl.git] / source / lighting.h
index 794fb75a045497eae7c803b2f86aab9c3d42ce58..7c7dc454c14f027e1fed3c17f62ec5b6b9b3c608 100644 (file)
@@ -5,6 +5,7 @@
 #include "bindable.h"
 #include "color.h"
 #include "gl.h"
+#include "programdata.h"
 
 namespace Msp {
 namespace GL {
@@ -19,6 +20,7 @@ class Lighting: public Bindable<Lighting>
 private:
        Color ambient;
        std::vector<const Light *> lights;
+       ProgramData shdata;
 
 public:
        Lighting();
@@ -28,6 +30,9 @@ public:
 
        void attach(unsigned, const Light &);
        void detach(unsigned);
+
+       void update_shader_data(const Matrix &);
+       const ProgramData &get_shader_data() const { return shdata; }
        void bind() const;
 
        static void unbind();