]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/light.h
Use persistent uniform blocks for Camera, Lighting and Clipping
[libs/gl.git] / source / materials / light.h
index d4b66077928188076b44974d6eaf6c36d4e2ccc2..4532d0d42c4035c2442fbcaf2e1eea414ce6c164 100644 (file)
@@ -51,6 +51,7 @@ private:
        float spot_exp;
        Geometry::Angle<float> spot_cutoff;
        float attenuation[3];
+       unsigned generation;
 
 public:
        Light();
@@ -107,9 +108,11 @@ public:
        void set_attenuation(float, float, float);
        const float *get_attenuation() const { return attenuation; }
 
-       /** Updates a ProgramData object with the uniforms for the Light.  A view
-       matrix and light source index must be passed in. */
-       void update_shader_data(ProgramData &, const Matrix &, unsigned) const;
+       unsigned get_generation() const { return generation; }
+
+       /** Updates a ProgramData object with the uniforms for the Light.  A light
+       source index must be passed in.  Primarily used by Lighting. */
+       void update_shader_data(ProgramData &, unsigned) const;
 };
 
 } // namespace GL