17 #ifndef IGNITION_RENDERING_MATERIAL_HH_ 18 #define IGNITION_RENDERING_MATERIAL_HH_ 21 #include <ignition/math/Color.hh> 22 #include <ignition/common/Material.hh> 26 #include "ignition/rendering/Export.hh" 42 public:
virtual bool LightingEnabled()
const = 0;
46 public:
virtual void SetLightingEnabled(
const bool _enabled) = 0;
50 public:
virtual math::Color Ambient()
const = 0;
57 public:
virtual void SetAmbient(
const double _r,
const double _g,
58 const double _b,
const double _a = 1.0) = 0;
62 public:
virtual void SetAmbient(
const math::Color &_color) = 0;
66 public:
virtual math::Color Diffuse()
const = 0;
73 public:
virtual void SetDiffuse(
const double _r,
const double _g,
74 const double _b,
const double _a = 1.0) = 0;
78 public:
virtual void SetDiffuse(
const math::Color &_color) = 0;
82 public:
virtual math::Color Specular()
const = 0;
89 public:
virtual void SetSpecular(
const double _r,
const double _g,
90 const double _b,
const double _a = 1.0) = 0;
94 public:
virtual void SetSpecular(
const math::Color &_color) = 0;
98 public:
virtual math::Color Emissive()
const = 0;
105 public:
virtual void SetEmissive(
const double _r,
const double _g,
106 const double _b,
const double _a = 1.0) = 0;
110 public:
virtual void SetEmissive(
const math::Color &_color) = 0;
114 public:
virtual double Shininess()
const = 0;
118 public:
virtual void SetShininess(
const double _shininess) = 0;
122 public:
virtual double Transparency()
const = 0;
126 public:
virtual void SetTransparency(
const double _transparency) = 0;
130 public:
virtual double Reflectivity()
const = 0;
134 public:
virtual void SetReflectivity(
const double _reflectivity) = 0;
138 public:
virtual bool CastShadows()
const = 0;
142 public:
virtual void SetCastShadows(
const bool _castShadows) = 0;
146 public:
virtual bool ReceiveShadows()
const = 0;
150 public:
virtual void SetReceiveShadows(
const bool _receiveShadows) = 0;
154 public:
virtual bool ReflectionEnabled()
const = 0;
158 public:
virtual void SetReflectionEnabled(
const bool _enabled) = 0;
162 public:
virtual bool HasTexture()
const = 0;
170 public:
virtual void SetTexture(
const std::string &_name) = 0;
173 public:
virtual void ClearTexture() = 0;
177 public:
virtual bool HasNormalMap()
const = 0;
185 public:
virtual void SetNormalMap(
const std::string &_name) = 0;
188 public:
virtual void ClearNormalMap() = 0;
196 public:
virtual void SetShaderType(
enum ShaderType _type) = 0;
209 public:
virtual void CopyFrom(
const common::Material &_material) = 0;
virtual ~Material()
Deconstructor.
Definition: Material.hh:38
ShaderType
Available types of shaders. Note that not all rendering-engines will be able to use each type...
Definition: ShaderType.hh:31
Definition: ArrowVisual.hh:22
Represents a surface material of a Geometry.
Definition: Material.hh:34
Represents an object present in the scene graph. This includes sub-meshes, materials, render targets, as well as posable nodes.
Definition: Object.hh:31