Ignition Rendering

API Reference

0.1.0
BaseMaterial< T > Class Template Referenceabstract

#include <BaseMaterial.hh>

Public Member Functions

virtual ~BaseMaterial ()
 
virtual void ClearNormalMap ()=0
 Removes any normal map mapped to this material. More...
 
virtual void ClearTexture ()=0
 Removes any texture mapped to this material. More...
 
virtual MaterialPtr Clone (const std::string &_name="") const
 Clone this material. More...
 
virtual void CopyFrom (ConstMaterialPtr _material)
 Copy properties from given Material. More...
 
virtual void CopyFrom (const common::Material &_material)
 Copy properties from given Material. More...
 
virtual void PreRender ()
 Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender. More...
 
virtual void SetAmbient (const double _r, const double _g, const double _b, const double _a=1.0)
 Set the ambient color. More...
 
virtual void SetAmbient (const math::Color &_color)=0
 Set the ambient color. More...
 
virtual void SetDiffuse (const double _r, const double _g, const double _b, const double _a=1.0)
 Set the diffuse color. More...
 
virtual void SetDiffuse (const math::Color &_color)=0
 Set the diffuse color. More...
 
virtual void SetEmissive (const double _r, const double _g, const double _b, const double _a=1.0)
 Set the emissive color. More...
 
virtual void SetEmissive (const math::Color &_color)=0
 Set the emissive color. More...
 
virtual void SetReceiveShadows (const bool _receiveShadows)=0
 Specify if this material receives shadows. More...
 
virtual void SetShaderType (enum ShaderType _type)=0
 Set the ShaderType value. More...
 
virtual void SetSpecular (const double _r, const double _g, const double _b, const double _a=1.0)
 Set the specular color. More...
 
virtual void SetSpecular (const math::Color &_color)=0
 Set the specular color. More...
 
- Public Member Functions inherited from Material
virtual ~Material ()
 Deconstructor. More...
 
virtual math::Color Ambient () const =0
 Get the ambient color. More...
 
virtual bool CastShadows () const =0
 Determine if this material casts shadows. More...
 
virtual math::Color Diffuse () const =0
 Get the diffuse color. More...
 
virtual math::Color Emissive () const =0
 Get the emissive color. More...
 
virtual bool HasNormalMap () const =0
 Determine if this material has a normal map. More...
 
virtual bool HasTexture () const =0
 Determine if this material has a texture. More...
 
virtual bool LightingEnabled () const =0
 Determine if lighting affects this material. More...
 
virtual std::string NormalMap () const =0
 Get the URI of the normal map file. More...
 
virtual bool ReceiveShadows () const =0
 Determine if this material receives shadows. More...
 
virtual bool ReflectionEnabled () const =0
 Determine if this material has a reflection. More...
 
virtual double Reflectivity () const =0
 Get the reflectivity value. More...
 
virtual void SetCastShadows (const bool _castShadows)=0
 Specify if this material casts shadows. More...
 
virtual void SetLightingEnabled (const bool _enabled)=0
 Specify if lighting affects this material. More...
 
virtual void SetNormalMap (const std::string &_name)=0
 Set the material normal map. More...
 
virtual void SetReflectionEnabled (const bool _enabled)=0
 Specify if this material has a reflection. More...
 
virtual void SetReflectivity (const double _reflectivity)=0
 Set the reflectivity value. More...
 
virtual void SetShininess (const double _shininess)=0
 Set the shininess value. More...
 
virtual void SetTexture (const std::string &_name)=0
 Set the material texture. More...
 
virtual void SetTransparency (const double _transparency)=0
 Set the transparency value. More...
 
virtual enum ShaderType ShaderType () const =0
 Get the ShaderType value. More...
 
virtual double Shininess () const =0
 Get the shininess value. More...
 
virtual math::Color Specular () const =0
 Get the specular color. More...
 
virtual std::string Texture () const =0
 Get the URI of the texture file. More...
 
virtual double Transparency () const =0
 Get the transparency value. More...
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Deconstructor. More...
 
virtual void Destroy ()=0
 Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior. More...
 
virtual unsigned int Id () const =0
 Get the object ID. This ID will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More...
 
virtual std::string Name () const =0
 Get the object name. This name will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More...
 
virtual ScenePtr Scene () const =0
 Get the Scene that created this object. More...
 

Protected Member Functions

 BaseMaterial ()
 
virtual void Reset ()
 

Constructor & Destructor Documentation

◆ BaseMaterial()

BaseMaterial ( )
protected

◆ ~BaseMaterial()

~BaseMaterial ( )
virtual

Member Function Documentation

◆ ClearNormalMap()

virtual void ClearNormalMap ( )
pure virtual

Removes any normal map mapped to this material.

Implements Material.

Implemented in OgreMaterial.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), and BaseMaterial< OgreObject >::Reset().

◆ ClearTexture()

virtual void ClearTexture ( )
pure virtual

Removes any texture mapped to this material.

Implements Material.

Implemented in OgreMaterial.

Referenced by BaseMaterial< OgreObject >::Reset().

◆ Clone()

MaterialPtr Clone ( const std::string _name = "") const
virtual

Clone this material.

Returns
New cloned material

Implements Material.

◆ CopyFrom() [1/2]

void CopyFrom ( ConstMaterialPtr  _material)
virtual

Copy properties from given Material.

Parameters
[in]_materialSource Material to be copied from

Implements Material.

◆ CopyFrom() [2/2]

void CopyFrom ( const common::Material &  _material)
virtual

Copy properties from given Material.

Parameters
[in]_materialSource Material to be copied from

Implements Material.

◆ PreRender()

void PreRender ( )
virtual

Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.

Implements Object.

◆ Reset()

void Reset ( )
protectedvirtual

◆ SetAmbient() [1/2]

void SetAmbient ( const double  _r,
const double  _g,
const double  _b,
const double  _a = 1.0 
)
virtual

Set the ambient color.

Parameters
[in]_rRed value
[in]_gGreen value
[in]_bBlue value
[in]_aAlpha value

Implements Material.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), BaseMaterial< OgreObject >::Reset(), and BaseMaterial< OgreObject >::SetAmbient().

◆ SetAmbient() [2/2]

virtual void SetAmbient ( const math::Color &  _color)
pure virtual

Set the ambient color.

Parameters
[in]_colorNew ambient color

Implements Material.

Implemented in OgreMaterial.

◆ SetDiffuse() [1/2]

void SetDiffuse ( const double  _r,
const double  _g,
const double  _b,
const double  _a = 1.0 
)
virtual

Set the diffuse color.

Parameters
[in]_rRed value
[in]_gGreen value
[in]_bBlue value
[in]_aAlpha value

Implements Material.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), BaseMaterial< OgreObject >::Reset(), and BaseMaterial< OgreObject >::SetDiffuse().

◆ SetDiffuse() [2/2]

virtual void SetDiffuse ( const math::Color &  _color)
pure virtual

Set the diffuse color.

Parameters
[in]_colorNew diffuse color

Implements Material.

Implemented in OgreMaterial.

◆ SetEmissive() [1/2]

void SetEmissive ( const double  _r,
const double  _g,
const double  _b,
const double  _a = 1.0 
)
virtual

Set the emissive color.

Parameters
[in]_rRed value
[in]_gGreen value
[in]_bBlue value
[in]_aAlpha value

Implements Material.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), BaseMaterial< OgreObject >::Reset(), and BaseMaterial< OgreObject >::SetEmissive().

◆ SetEmissive() [2/2]

virtual void SetEmissive ( const math::Color &  _color)
pure virtual

Set the emissive color.

Parameters
[in]_colorNew emissive color

Implements Material.

Implemented in OgreMaterial.

◆ SetReceiveShadows()

virtual void SetReceiveShadows ( const bool  _receiveShadows)
pure virtual

Specify if this material receives shadows.

Parameters
[in]_receiveShadowsTrue if this material receives shadows

Implements Material.

Implemented in OgreMaterial.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), and BaseMaterial< OgreObject >::Reset().

◆ SetShaderType()

virtual void SetShaderType ( enum ShaderType  _type)
pure virtual

Set the ShaderType value.

Parameters
[in]_typeNew ShaderType value

Implements Material.

Implemented in OgreMaterial.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), and BaseMaterial< OgreObject >::Reset().

◆ SetSpecular() [1/2]

void SetSpecular ( const double  _r,
const double  _g,
const double  _b,
const double  _a = 1.0 
)
virtual

Set the specular color.

Parameters
[in]_rRed value
[in]_gGreen value
[in]_bBlue value
[in]_aAlpha value

Implements Material.

Referenced by BaseMaterial< OgreObject >::CopyFrom(), BaseMaterial< OgreObject >::Reset(), and BaseMaterial< OgreObject >::SetSpecular().

◆ SetSpecular() [2/2]

virtual void SetSpecular ( const math::Color &  _color)
pure virtual

Set the specular color.

Parameters
[in]_colorNew specular color

Implements Material.

Implemented in OgreMaterial.


The documentation for this class was generated from the following file: