]> git.tdb.fi Git - libs/gl.git/blobdiff - source/material.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / material.h
diff --git a/source/material.h b/source/material.h
deleted file mode 100644 (file)
index ead1161..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-#ifndef MSP_GL_MATERIAL_H_
-#define MSP_GL_MATERIAL_H_
-
-#include <msp/datafile/objectloader.h>
-#include "color.h"
-#include "programdata.h"
-
-namespace Msp {
-namespace GL {
-
-/**
-Stores basic material properties.  This includes color and reflection
-parameters, but does not include texturing.  Materials interact with light
-sources and ambient lighting to produce the base color of a surface.  Textures
-can be used to add detail.
-
-Material provides a set of uniform variables for use with shaders.
-*/
-class Material
-{
-public:
-       class Loader: public DataFile::CollectionObjectLoader<Material>
-       {
-       private:
-               bool srgb;
-
-       public:
-               Loader(Material &);
-               Loader(Material &, Collection &);
-       private:
-               void init();
-
-               Color make_color(float, float, float, float);
-               void ambient(float, float, float, float);
-               void diffuse(float, float, float, float);
-               void specular(float, float, float, float);
-               void emission(float, float, float, float);
-               void shininess(float);
-               void reflectivity(float);
-       };
-
-private:
-       Color ambient;
-       Color diffuse;
-       Color specular;
-       Color emission;
-       float shininess;
-       float reflectivity;
-       ProgramData shdata;
-
-public:
-       Material();
-
-       /** Sets the ambient color of the material.  Provided to shaders with the
-       name material.ambient. */
-       void set_ambient(const Color &);
-
-       /** Sets the diffuse (direction-independent) color of the material.
-       Provided to shaders with the name material.diffuse. */
-       void set_diffuse(const Color &);
-
-       /** Sets the specular (direction-dependent) color of the material.  Provided
-       to shaders with the name material.specular. */
-       void set_specular(const Color &);
-       void set_emission(const Color &);
-
-       /** Sets the specular exponent of the material.  Provided to shaders with
-       the name material.shininess. */
-       void set_shininess(float);
-
-       /** Sets the reflectivity of the material.  Provided to shaders with the
-       name reflectivity.  Has no effect when shaders are not used. */
-       void set_reflectivity(float);
-
-       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; }
-       float get_reflectivity() const { return reflectivity; }
-
-       /** Returns the uniforms for the material. */
-       const ProgramData &get_shader_data() const { return shdata; }
-};
-
-} // namespace GL
-} // namespace Msp
-
-#endif