private:
Color ambient;
std::vector<const Light *> lights;
- ProgramData shdata;
public:
Lighting();
void attach(unsigned, const Light &);
void detach(unsigned);
- void update_shader_data(const Matrix &);
- const ProgramData &get_shader_data() const { return shdata; }
+ void update_shader_data(ProgramData &, const Matrix &) const;
void bind() const;
static void unbind();