X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fmaterials%2Funlitmaterial.h;h=f4f1086d32c68acd4aca0b557dd4d68b03551aa3;hp=b8b28835b7ce18f031c79a4cb0a877670555b2ac;hb=HEAD;hpb=2f198e3210714c7abac53bbe1be4d41b1ef85c14 diff --git a/source/materials/unlitmaterial.h b/source/materials/unlitmaterial.h index b8b28835..f4f1086d 100644 --- a/source/materials/unlitmaterial.h +++ b/source/materials/unlitmaterial.h @@ -6,6 +6,10 @@ namespace Msp { namespace GL { +/** +A material which performs no lighting calculations at all. Useful for HUD +graphics. +*/ class UnlitMaterial: public Material { public: @@ -15,7 +19,6 @@ public: static ActionMap shared_actions; public: - Loader(UnlitMaterial &); Loader(UnlitMaterial &, Collection &); private: @@ -25,21 +28,24 @@ public: }; private: - const Texture *texture; - Color tint; - bool vertex_color; + const Texture *texture = 0; + Color color; + bool vertex_color = false; + + static const Tag texture_tags[]; public: UnlitMaterial(); protected: - virtual std::string create_program_source() const; + virtual void fill_program_info(std::string &, std::map &) const; public: - virtual void attach_textures_to(Texturing &, ProgramData &) const; + virtual const Tag *get_texture_tags() const { return texture_tags; } + virtual const Texture *get_texture(Tag) const; void set_texture(const Texture *); - void set_tint(const Color &); + void set_color(const Color &); void set_vertex_color(bool); };