Ignition Rendering

API Reference

5.1.0
Material Class Referenceabstract

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

#include <ignition/rendering/Material.hh>

Public Member Functions

virtual ~Material ()
 Destructor. 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 ClearLightMap ()=0
 Removes any light 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 HasLightMap () const =0
 Determine if this material has a light 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 std::string LightMap () const =0
 Get the URI of the light map file. More...
 
virtual unsigned int LightMapTexCoordSet () const =0
 Get the texture coordinate set used by lightmap. 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 RenderOrder () const =0
 Get the render order value of this material. 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 &_emissiveMap)=0
 Set the material emissive map. More...
 
virtual void SetEnvironmentMap (const std::string &_metalnessMap)=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 SetLightMap (const std::string &_lightMap, unsigned int _uvSet=0u)=0
 Set the material light map. 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 &_metalnessMap)=0
 Set the material metalness map. More...
 
virtual void SetNormalMap (const std::string &_normalMap)=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 SetRenderOrder (const float _renderOrder)=0
 Set the render order. When polygons are coplanar, you can get problems with 'depth fighting' where the pixels from the two polys compete for the same screen pixel. This param help to avoid this problem. 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 &_roughnessMap)=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 &_texture)=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

Destructor.

References Material::AlphaThreshold(), Material::Ambient(), Material::CastShadows(), Material::ClearEmissiveMap(), Material::ClearEnvironmentMap(), Material::ClearLightMap(), 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::HasLightMap(), Material::HasMetalnessMap(), Material::HasNormalMap(), Material::HasRoughnessMap(), Material::HasTexture(), Material::LightingEnabled(), Material::LightMap(), Material::LightMapTexCoordSet(), Material::Metalness(), Material::MetalnessMap(), Material::NormalMap(), Material::ReceiveShadows(), Material::ReflectionEnabled(), Material::Reflectivity(), Material::RenderOrder(), 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::SetLightMap(), Material::SetMetalness(), Material::SetMetalnessMap(), Material::SetNormalMap(), Material::SetReceiveShadows(), Material::SetReflectionEnabled(), Material::SetReflectivity(), Material::SetRenderOrder(), 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().

◆ ClearLightMap()

virtual void ClearLightMap ( )
pure virtual

Removes any light 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().

◆ HasLightMap()

virtual bool HasLightMap ( ) const
pure virtual

Determine if this material has a light map.

Returns
True if this material has a light 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().

◆ LightMap()

virtual std::string LightMap ( ) const
pure virtual

Get the URI of the light map file.

Returns
URI of the light map file

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

Referenced by Material::~Material().

◆ LightMapTexCoordSet()

virtual unsigned int LightMapTexCoordSet ( ) const
pure virtual

Get the texture coordinate set used by lightmap.

Returns
texture coordinate set of the light map

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

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().

◆ RenderOrder()

virtual float RenderOrder ( ) const
pure virtual

Get the render order value of this material.

Returns
Material render order

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

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, Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

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 OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

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, Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

◆ 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, Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

◆ SetEmissiveMap()

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

Set the material emissive map.

Parameters
[in]_emissiveMapURI 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 _metalnessMap)
pure virtual

Set the material environment map.

Parameters
[in]_metalnessMapURI 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().

◆ SetLightMap()

virtual void SetLightMap ( const std::string _lightMap,
unsigned int  _uvSet = 0u 
)
pure virtual

Set the material light map.

Parameters
[in]_lightMapURI of the new light map file
[in]_uvSetTexture coordinate set to use

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

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 _metalnessMap)
pure virtual

Set the material metalness map.

Parameters
[in]_metalnessMapURI 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 _normalMap)
pure virtual

Set the material normal map.

Parameters
[in]_normalMapURI 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 OgreMaterial, BaseMaterial< T >, BaseMaterial< Ogre2Object >, BaseMaterial< OgreObject >, 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 OgreMaterial, BaseMaterial< T >, 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().

◆ SetRenderOrder()

virtual void SetRenderOrder ( const float  _renderOrder)
pure virtual

Set the render order. When polygons are coplanar, you can get problems with 'depth fighting' where the pixels from the two polys compete for the same screen pixel. This param help to avoid this problem.

Parameters
[in]_renderOrderRender order to set to

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

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 _roughnessMap)
pure virtual

Set the material roughness map.

Parameters
[in]_roughnessMapURI 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, Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

◆ SetTexture()

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

Set the material texture.

Parameters
[in]_textureURI 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, Ogre2Material, BaseMaterial< T >, BaseMaterial< Ogre2Object >, and BaseMaterial< OgreObject >.

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: