X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fbasicmaterial.h;h=95259f476b233198856c49a42391049f54f6b0b5;hb=bec07999d95b76f4b47cffcc564d0cd0afc0435e;hp=9b7eab074ed5df6c43cc6b5afaa99a7d6a5eb219;hpb=3500f13f51dabadd2e7f06b81820936520cc8115;p=libs%2Fgl.git diff --git a/source/basicmaterial.h b/source/basicmaterial.h index 9b7eab07..95259f47 100644 --- a/source/basicmaterial.h +++ b/source/basicmaterial.h @@ -9,7 +9,7 @@ namespace GL { class BasicMaterial: public Material { public: - class Loader: public DataFile::DerivedObjectLoader > + class Loader: public DataFile::DerivedObjectLoader > { private: static ActionMap shared_actions; @@ -29,11 +29,16 @@ private: Property normal; Property emission; Property reflectivity; + bool receive_shadows; public: BasicMaterial(); - void attach_textures_to(Texturing &, ProgramData &) const; +protected: + virtual std::string create_program_source() const; + +public: + virtual void attach_textures_to(Texturing &, ProgramData &) const; void set_diffuse(const Color &); void set_diffuse_map(const Texture *); @@ -46,6 +51,7 @@ public: void set_shininess_map(const Texture *); void set_reflectivity(float); void set_reflectivity_map(const Texture *); + void set_receive_shadows(bool); }; } // namespace GL