8 #ifndef META_OCEAN_RENDERING_MATERIAL_H
9 #define META_OCEAN_RENDERING_MATERIAL_H
This class implements a color defined by red, green, blue and alpha parameters.
Definition: RGBAColor.h:41
This class is the base class for all rendering attribute objects.
Definition: Attribute.h:39
This class is the base class for all materials.
Definition: rendering/Material.h:49
virtual RGBAColor ambientColor() const
Returns the ambient color of this material.
virtual bool setTransparency(const float transparency)
Sets the transparency of the material.
~Material() override
Destructs a meterial object.
virtual float refractionIndex() const
Returns the index of refraction of this material with range [0.0, 1.0].
virtual bool set(const RGBAColor &ambient, const RGBAColor &diffuse, const RGBAColor &emissive, const RGBAColor &specular, const float specularExponent, const float transparency)
Sets all color values of the material at once.
virtual bool setRefractionIndex(const float index)
Sets the index of refraction of this material.
virtual bool setEmissiveColor(const RGBAColor &color)
Sets the emissive color of the material.
virtual bool setSpecularColor(const RGBAColor &color)
Sets the specular color of the material.
ObjectType type() const override
Returns the type of this object.
virtual float specularExponent() const
Returns the specular exponent of this material with range [0.0, infinity).
virtual RGBAColor specularColor() const
Returns the specular color of this material.
Material()
Creates a new material object.
virtual float reflectivity() const
Returns the reflectivity factor of this material with range [0.0, 1.0].
virtual void get(RGBAColor &ambient, RGBAColor &diffuse, RGBAColor &emissive, RGBAColor &specular, float &specularExponent, float &transparency)
Gets all color values of the material at once.
virtual bool setSpecularExponent(const float specularExponent)
Sets the specular exponent of this material with range [0.0, infinity).
virtual bool setAmbientColor(const RGBAColor &color)
Sets the ambient color of the material.
virtual RGBAColor diffuseColor() const
Returns the diffuse color of this material.
virtual float transparency() const
Returns the transparency factor of this material with range [0.0, 1.0].
virtual RGBAColor emissiveColor() const
Returns the emissive color of this material.
virtual bool setDiffuseColor(const RGBAColor &color)
Sets the diffuse color of the material.
virtual bool setReflectivity(const float reflectivity)
Sets the reflectivity of this material.
ObjectType
Definition of different object type.
Definition: Object.h:63
SmartObjectRef< Material > MaterialRef
Definition of a smart object reference holding a material.
Definition: rendering/Material.h:23
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15