Ignition Rendering

API Reference

4.0.0
Material Class Referenceabstract

Represents a surface material of a Geometry. More...

#include <ignition/rendering/Material.hh>

Public Member Functions

virtual ~Material ()
 Deconstructor. More...
 
virtual double AlphaThreshold () const =0
 Get the alpha threshold. 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 void ClearEmissiveMap ()=0
 Removes any emissive map mapped to this material. More...
 
virtual void ClearEnvironmentMap ()=0
 Removes any environment map mapped to this material. More...
 
virtual void ClearMetalnessMap ()=0
 Removes any metalness map mapped to this material. More...
 
virtual void ClearNormalMap ()=0
 Removes any normal map mapped to this material. More...
 
virtual void ClearRoughnessMap ()=0
 Removes any roughness 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 =0
 Clone this material. More...
 
virtual void CopyFrom (ConstMaterialPtr _material)=0
 Copy properties from given Material. More...
 
virtual void CopyFrom (const common::Material &_material)=0
 Copy properties from given Material. More...
 
virtual bool DepthCheckEnabled () const =0
 Determine if depth buffer checking is enabled. More...
 
virtual bool DepthWriteEnabled () const =0
 Determine if depth buffer writing is enabled. More...
 
virtual math::Color Diffuse () const =0
 Get the diffuse color. More...
 
virtual math::Color Emissive () const =0
 Get the emissive color. More...
 
virtual std::string EmissiveMap () const =0
 Get the URI of the emissive map file. More...
 
virtual std::string EnvironmentMap () const =0
 Get the URI of the environment map file. More...
 
virtual std::string FragmentShader () const =0
 Get path to the fragment shader. More...
 
virtual ShaderParamsPtr FragmentShaderParams ()=0
 Get params for the fragment shader. More...
 
virtual bool HasEmissiveMap () const =0
 Determine if this material has an emissive map. More...
 
virtual bool HasEnvironmentMap () const =0
 Determine if this material has a environment map. More...
 
virtual bool HasMetalnessMap () const =0
 Determine if this material has a metalness map. More...
 
virtual bool HasNormalMap () const =0
 Determine if this material has a normal map. More...
 
virtual bool HasRoughnessMap () const =0
 Determine if this material has a roughness 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 float Metalness () const =0
 Get the metalness value of this material. More...
 
virtual std::string MetalnessMap () const =0
 Get the URI of the metalness map file. 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 float Roughness () const =0
 Get the roughness value of this material. More...
 
virtual std::string RoughnessMap () const =0
 Get the URI of the roughness map file. More...
 
virtual void SetAlphaFromTexture (bool _enabled, double _alpha=0.5, bool _twoSided=true)=0
 Set the material to use the alpha channel from the textures. More...
 
virtual void SetAmbient (const double _r, const double _g, const double _b, const double _a=1.0)=0
 Set the ambient color. More...
 
virtual void SetAmbient (const math::Color &_color)=0
 Set the ambient color. More...
 
virtual void SetCastShadows (const bool _castShadows)=0
 Specify if this material casts shadows. More...
 
virtual void SetDepthCheckEnabled (bool _enabled)=0
 Specify if depth buffer checking is enabled. More...
 
virtual void SetDepthMaterial (const double far, const double near)=0
 Configuration for Depth Material. More...
 
virtual void SetDepthWriteEnabled (bool _enabled)=0
 Specify if depth buffer writing is enabled. More...
 
virtual void SetDiffuse (const double _r, const double _g, const double _b, const double _a=1.0)=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)=0
 Set the emissive color. More...
 
virtual void SetEmissive (const math::Color &_color)=0
 Set the emissive color. More...
 
virtual void SetEmissiveMap (const std::string &_name)=0
 Set the material emissive map. More...
 
virtual void SetEnvironmentMap (const std::string &_name)=0
 Set the material environment map. More...
 
virtual void SetFragmentShader (const std::string &_path)=0
 Set the fragment shader. More...
 
virtual void SetLightingEnabled (const bool _enabled)=0
 Specify if lighting affects this material. More...
 
virtual void SetMetalness (const float _metalness)=0
 Set the metalness value. Only affects material of type MT_PBS. More...
 
virtual void SetMetalnessMap (const std::string &_name)=0
 Set the material metalness map. More...
 
virtual void SetNormalMap (const std::string &_name)=0
 Set the material normal map. More...
 
virtual void SetReceiveShadows (const bool _receiveShadows)=0
 Specify if this material receives shadows. 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 SetRoughness (const float _roughness)=0
 Set the roughness value. Only affects material of type MT_PBS. More...
 
virtual void SetRoughnessMap (const std::string &_name)=0
 Set the material roughness map. More...
 
virtual void SetShaderType (enum ShaderType _type)=0
 Set the ShaderType value. More...
 
virtual void SetShininess (const double _shininess)=0
 Set the shininess value. More...
 
virtual void SetSpecular (const double _r, const double _g, const double _b, const double _a=1.0)=0
 Set the specular color. More...
 
virtual void SetSpecular (const math::Color &_color)=0
 Set the specular color. 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 void SetVertexShader (const std::string &_path)=0
 Set the vertex shader. 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 bool TextureAlphaEnabled () const =0
 Get the enable alpha from textures. More...
 
virtual double Transparency () const =0
 Get the transparency value. More...
 
virtual bool TwoSidedEnabled () const =0
 Get the enable two sided rendering value. More...
 
virtual enum MaterialType Type () const =0
 Removes any metalness map mapped to this material. More...
 
virtual std::string VertexShader () const =0
 Get path to the vertex shader. More...
 
virtual ShaderParamsPtr VertexShaderParams ()=0
 Get params for the vertex shader. More...
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Destructor. 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 void PostRender ()=0
 Post process this object and any of its children after rendering. More...
 
virtual void PreRender ()=0
 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 ScenePtr Scene () const =0
 Get the Scene that created this object. More...
 

Detailed Description

Represents a surface material of a Geometry.

Constructor & Destructor Documentation

◆ ~Material()

virtual ~Material ( )
inlinevirtual

Deconstructor.

References Material::AlphaThreshold(), Material::Ambient(), Material::CastShadows(), Material::ClearEmissiveMap(), Material::ClearEnvironmentMap(), Material::ClearMetalnessMap(), Material::ClearNormalMap(), Material::ClearRoughnessMap(), Material::ClearTexture(), Material::Clone(), Material::CopyFrom(), Material::DepthCheckEnabled(), Material::DepthWriteEnabled(), Material::Diffuse(), Material::Emissive(), Material::EmissiveMap(), Material::EnvironmentMap(), Material::FragmentShader(), Material::FragmentShaderParams(), Material::HasEmissiveMap(), Material::HasEnvironmentMap(), Material::HasMetalnessMap(), Material::HasNormalMap(), Material::HasRoughnessMap(), Material::HasTexture(), Material::LightingEnabled(), Material::Metalness(), Material::MetalnessMap(), Material::NormalMap(), Material::ReceiveShadows(), Material::ReflectionEnabled(), Material::Reflectivity(), Material::Roughness(), Material::RoughnessMap(), Material::SetAlphaFromTexture(), Material::SetAmbient(), Material::SetCastShadows(), Material::SetDepthCheckEnabled(), Material::SetDepthMaterial(), Material::SetDepthWriteEnabled(), Material::SetDiffuse(), Material::SetEmissive(), Material::SetEmissiveMap(), Material::SetEnvironmentMap(), Material::SetFragmentShader(), Material::SetLightingEnabled(), Material::SetMetalness(), Material::SetMetalnessMap(), Material::SetNormalMap(), Material::SetReceiveShadows(), Material::SetReflectionEnabled(), Material::SetReflectivity(), Material::SetRoughness(), Material::SetRoughnessMap(), Material::SetShaderType(), Material::SetShininess(), Material::SetSpecular(), Material::SetTexture(), Material::SetTransparency(), Material::SetVertexShader(), Material::ShaderType(), Material::Shininess(), Material::Specular(), Material::Texture(), Material::TextureAlphaEnabled(), Material::Transparency(), Material::TwoSidedEnabled(), Material::Type(), Material::VertexShader(), and Material::VertexShaderParams().

Member Function Documentation

◆ AlphaThreshold()

virtual double AlphaThreshold ( ) const
pure virtual

Get the alpha threshold.

Returns
The alpha threshold value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ Ambient()

virtual math::Color Ambient ( ) const
pure virtual

Get the ambient color.

Returns
The ambient color

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ CastShadows()

virtual bool CastShadows ( ) const
pure virtual

Determine if this material casts shadows.

Returns
True if this material casts shadows

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ ClearEmissiveMap()

virtual void ClearEmissiveMap ( )
pure virtual

Removes any emissive map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ ClearEnvironmentMap()

virtual void ClearEnvironmentMap ( )
pure virtual

Removes any environment map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ ClearMetalnessMap()

virtual void ClearMetalnessMap ( )
pure virtual

Removes any metalness map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ ClearNormalMap()

virtual void ClearNormalMap ( )
pure virtual

Removes any normal map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ ClearRoughnessMap()

virtual void ClearRoughnessMap ( )
pure virtual

Removes any roughness map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ ClearTexture()

virtual void ClearTexture ( )
pure virtual

Removes any texture mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ Clone()

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

Clone this material.

Returns
New cloned material

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ CopyFrom() [1/2]

virtual void CopyFrom ( ConstMaterialPtr  _material)
pure virtual

Copy properties from given Material.

Parameters
[in]_materialSource Material to be copied from

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ CopyFrom() [2/2]

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

Copy properties from given Material.

Parameters
[in]_materialSource Material to be copied from

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

◆ DepthCheckEnabled()

virtual bool DepthCheckEnabled ( ) const
pure virtual

Determine if depth buffer checking is enabled.

Returns
True if depth check is enabled

Implemented in Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ DepthWriteEnabled()

virtual bool DepthWriteEnabled ( ) const
pure virtual

Determine if depth buffer writing is enabled.

Returns
True if depth buffer writing is enabled

Implemented in Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Diffuse()

virtual math::Color Diffuse ( ) const
pure virtual

Get the diffuse color.

Returns
The diffuse color

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ Emissive()

virtual math::Color Emissive ( ) const
pure virtual

Get the emissive color.

Returns
The emissive color

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ EmissiveMap()

virtual std::string EmissiveMap ( ) const
pure virtual

Get the URI of the emissive map file.

Returns
URI of the emissive map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ EnvironmentMap()

virtual std::string EnvironmentMap ( ) const
pure virtual

Get the URI of the environment map file.

Returns
URI of the environment map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ FragmentShader()

virtual std::string FragmentShader ( ) const
pure virtual

Get path to the fragment shader.

Returns
Path to fragment shader

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ FragmentShaderParams()

virtual ShaderParamsPtr FragmentShaderParams ( )
pure virtual

Get params for the fragment shader.

Returns
editable parameters

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ HasEmissiveMap()

virtual bool HasEmissiveMap ( ) const
pure virtual

Determine if this material has an emissive map.

Returns
True if this material has an emissive map

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ HasEnvironmentMap()

virtual bool HasEnvironmentMap ( ) const
pure virtual

Determine if this material has a environment map.

Returns
True if this material has a environment map

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ HasMetalnessMap()

virtual bool HasMetalnessMap ( ) const
pure virtual

Determine if this material has a metalness map.

Returns
True if this material has a metalness map

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ HasNormalMap()

virtual bool HasNormalMap ( ) const
pure virtual

Determine if this material has a normal map.

Returns
True if this material has a normal map

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ HasRoughnessMap()

virtual bool HasRoughnessMap ( ) const
pure virtual

Determine if this material has a roughness map.

Returns
True if this material has a roughness map

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ HasTexture()

virtual bool HasTexture ( ) const
pure virtual

Determine if this material has a texture.

Returns
True if this material has a texture

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ LightingEnabled()

virtual bool LightingEnabled ( ) const
pure virtual

Determine if lighting affects this material.

Returns
True if lighting affects this material

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Metalness()

virtual float Metalness ( ) const
pure virtual

Get the metalness value of this material.

Returns
Material metalness

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ MetalnessMap()

virtual std::string MetalnessMap ( ) const
pure virtual

Get the URI of the metalness map file.

Returns
URI of the metalness map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ NormalMap()

virtual std::string NormalMap ( ) const
pure virtual

Get the URI of the normal map file.

Returns
URI of the normal map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ ReceiveShadows()

virtual bool ReceiveShadows ( ) const
pure virtual

Determine if this material receives shadows.

Returns
True if this material receives shadows

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ ReflectionEnabled()

virtual bool ReflectionEnabled ( ) const
pure virtual

Determine if this material has a reflection.

Returns
True if this material has a reflection

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Reflectivity()

virtual double Reflectivity ( ) const
pure virtual

Get the reflectivity value.

Returns
The reflectivity value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Roughness()

virtual float Roughness ( ) const
pure virtual

Get the roughness value of this material.

Returns
Material roughness

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ RoughnessMap()

virtual std::string RoughnessMap ( ) const
pure virtual

Get the URI of the roughness map file.

Returns
URI of the roughness map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetAlphaFromTexture()

virtual void SetAlphaFromTexture ( bool  _enabled,
double  _alpha = 0.5,
bool  _twoSided = true 
)
pure virtual

Set the material to use the alpha channel from the textures.

Parameters
[in]_enabledEnable alpha channel based rendering
[in]_alphaSet the alpha threshold value
[in]_twoSidedEnable two sided rendering

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetAmbient() [1/2]

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

Set the ambient color.

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

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ SetAmbient() [2/2]

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

Set the ambient color.

Parameters
[in]_colorNew ambient color

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

◆ SetCastShadows()

virtual void SetCastShadows ( const bool  _castShadows)
pure virtual

Specify if this material casts shadows.

Parameters
[in]_castShadowsTrue if this material casts shadows

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetDepthCheckEnabled()

virtual void SetDepthCheckEnabled ( bool  _enabled)
pure virtual

Specify if depth buffer checking is enabled.

Parameters
[in]_enabledTrue if depth check is enabled

Implemented in Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetDepthMaterial()

virtual void SetDepthMaterial ( const double  far,
const double  near 
)
pure virtual

Configuration for Depth Material.

Parameters
[in]farFar distance for normalized output
[in]nearNear distance for normalized output

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetDepthWriteEnabled()

virtual void SetDepthWriteEnabled ( bool  _enabled)
pure virtual

Specify if depth buffer writing is enabled.

Parameters
[in]_enabledTrue if depth buffer writing is enabled

Implemented in Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetDiffuse() [1/2]

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

Set the diffuse color.

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

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ SetDiffuse() [2/2]

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

Set the diffuse color.

Parameters
[in]_colorNew diffuse color

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

◆ SetEmissive() [1/2]

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

Set the emissive color.

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

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ SetEmissive() [2/2]

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

Set the emissive color.

Parameters
[in]_colorNew emissive color

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

◆ SetEmissiveMap()

virtual void SetEmissiveMap ( const std::string _name)
pure virtual

Set the material emissive map.

Parameters
[in]_nameURI of the new emissive map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetEnvironmentMap()

virtual void SetEnvironmentMap ( const std::string _name)
pure virtual

Set the material environment map.

Parameters
[in]_nameURI of the new environment map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetFragmentShader()

virtual void SetFragmentShader ( const std::string _path)
pure virtual

Set the fragment shader.

Parameters
[in]_pathpath to a file containing a glsl shader

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetLightingEnabled()

virtual void SetLightingEnabled ( const bool  _enabled)
pure virtual

Specify if lighting affects this material.

Parameters
[in]_enabledTrue if lighting affects this material

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetMetalness()

virtual void SetMetalness ( const float  _metalness)
pure virtual

Set the metalness value. Only affects material of type MT_PBS.

Parameters
[in]_metalnessMetalness to set to

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetMetalnessMap()

virtual void SetMetalnessMap ( const std::string _name)
pure virtual

Set the material metalness map.

Parameters
[in]_nameURI of the new metalness map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetNormalMap()

virtual void SetNormalMap ( const std::string _name)
pure virtual

Set the material normal map.

Parameters
[in]_nameURI of the new normal map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ SetReceiveShadows()

virtual void SetReceiveShadows ( const bool  _receiveShadows)
pure virtual

Specify if this material receives shadows.

Parameters
[in]_receiveShadowsTrue if this material receives shadows

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ SetReflectionEnabled()

virtual void SetReflectionEnabled ( const bool  _enabled)
pure virtual

Specify if this material has a reflection.

Parameters
[in]_enabledTrue if this material has a reflection

Implemented in BaseMaterial< T >, OgreMaterial, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ SetReflectivity()

virtual void SetReflectivity ( const double  _reflectivity)
pure virtual

Set the reflectivity value.

Parameters
[in]_reflectivityNew reflectivity value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetRoughness()

virtual void SetRoughness ( const float  _roughness)
pure virtual

Set the roughness value. Only affects material of type MT_PBS.

Parameters
[in]_roughnessRoughness to set to

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetRoughnessMap()

virtual void SetRoughnessMap ( const std::string _name)
pure virtual

Set the material roughness map.

Parameters
[in]_nameURI of the new roughness map file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetShaderType()

virtual void SetShaderType ( enum ShaderType  _type)
pure virtual

Set the ShaderType value.

Parameters
[in]_typeNew ShaderType value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetShininess()

virtual void SetShininess ( const double  _shininess)
pure virtual

Set the shininess value.

Parameters
[in]_shininessNew shininess value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ SetSpecular() [1/2]

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

Set the specular color.

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

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ SetSpecular() [2/2]

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

Set the specular color.

Parameters
[in]_colorNew specular color

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

◆ SetTexture()

virtual void SetTexture ( const std::string _name)
pure virtual

Set the material texture.

Parameters
[in]_nameURI of the new texture file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ SetTransparency()

virtual void SetTransparency ( const double  _transparency)
pure virtual

Set the transparency value.

Parameters
[in]_transparencyNew transparency value

Implemented in OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ SetVertexShader()

virtual void SetVertexShader ( const std::string _path)
pure virtual

Set the vertex shader.

Parameters
[in]_pathpath to a file containing a glsl shader

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ ShaderType()

virtual enum ShaderType ShaderType ( ) const
pure virtual

Get the ShaderType value.

Returns
The ShaderType value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Shininess()

virtual double Shininess ( ) const
pure virtual

Get the shininess value.

Returns
The shininess value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ Specular()

virtual math::Color Specular ( ) const
pure virtual

Get the specular color.

Returns
The specular color

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ Texture()

virtual std::string Texture ( ) const
pure virtual

Get the URI of the texture file.

Returns
URI of the texture file

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, OgreMaterial, and Ogre2Material.

Referenced by Material::~Material().

◆ TextureAlphaEnabled()

virtual bool TextureAlphaEnabled ( ) const
pure virtual

Get the enable alpha from textures.

Returns
The enable alpha value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ Transparency()

virtual double Transparency ( ) const
pure virtual

Get the transparency value.

Returns
The transparency value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ TwoSidedEnabled()

virtual bool TwoSidedEnabled ( ) const
pure virtual

Get the enable two sided rendering value.

Returns
The enable two sided rendering value

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

Referenced by Material::~Material().

◆ Type()

virtual enum MaterialType Type ( ) const
pure virtual

Removes any metalness map mapped to this material.

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and Ogre2Material.

Referenced by Material::~Material().

◆ VertexShader()

virtual std::string VertexShader ( ) const
pure virtual

Get path to the vertex shader.

Returns
Path to vertex shader

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().

◆ VertexShaderParams()

virtual ShaderParamsPtr VertexShaderParams ( )
pure virtual

Get params for the vertex shader.

Returns
editable parameters

Implemented in BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, and OgreMaterial.

Referenced by Material::~Material().


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