X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fmaterial.h;h=e1bfec4caa0707419941b88476394955ab651244;hp=9af86a700b6f5502c12b9b240f307263311a800a;hb=HEAD;hpb=f14435e58bfa0fa697a06ba9a454bb30cd37d9d8 diff --git a/source/material.h b/source/material.h deleted file mode 100644 index 9af86a70..00000000 --- a/source/material.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef MSP_GL_MATERIAL_H_ -#define MSP_GL_MATERIAL_H_ - -#include -#include "bindable.h" -#include "color.h" - -namespace Msp { -namespace GL { - -/** -Stores OpenGL material properties. Since OpenGL does not support material -objects, application of material is done with several calls to glMaterial. -*/ -class Material: public Bindable -{ -public: - class Loader: public DataFile::ObjectLoader - { - public: - Loader(Material &); - - private: - void ambient(float, float, float, float); - void diffuse(float, float, float, float); - void specular(float, float, float, float); - void emission(float, float, float, float); - }; - -private: - Color ambient; - Color diffuse; - Color specular; - Color emission; - float shininess; - -public: - Material(); - void set_ambient(const Color &a); - void set_diffuse(const Color &d); - void set_specular(const Color &s); - void set_emission(const Color &e); - void set_shininess(float s); - const Color &get_ambient() const { return ambient; } - const Color &get_diffuse() const { return diffuse; } - const Color &get_specular() const { return specular; } - const Color &get_emission() const { return emission; } - float get_shininess() const { return shininess; } - void bind() const; - - static void unbind(); -}; - -} // namespace GL -} // namespace Msp - -#endif