#########
IMaterial
#########

.. cpp:namespace:: ART::IMaterial

.. default-domain:: cpp

Functions
=========

====================================== ============================================================================================================================
..                                     :cpp:func:`SET_CID <ART::IMaterial::SET_CID>`                                                                               
void                                   :cpp:func:`SetType <virtual void ART::IMaterial::SetType(ART::MATERIAL_TYPE iType)=0>`                                      
:cpp:enumerator:`~ART::MATERIAL_TYPE`  :cpp:func:`GetType <virtual ART::MATERIAL_TYPE ART::IMaterial::GetType() const =0>`                                         
void                                   :cpp:func:`SetDiffuse <virtual void ART::IMaterial::SetDiffuse(const RED::Color &iDiffuse)=0>`                              
const :doc:`classRED_1_1Color` &       :cpp:func:`GetDiffuse <virtual const RED::Color & ART::IMaterial::GetDiffuse() const =0>`                                   
void                                   :cpp:func:`SetDiffuseTexture <virtual void ART::IMaterial::SetDiffuseTexture(const RED::Object *iTexture)=0>`               
const :doc:`classRED_1_1Object` *      :cpp:func:`GetDiffuseTexture <virtual const RED::Object * ART::IMaterial::GetDiffuseTexture() const =0>`                    
void                                   :cpp:func:`SetDiffuseWrap <virtual void ART::IMaterial::SetDiffuseWrap(bool iRepeatU, bool iRepeatV)=0>`                    
void                                   :cpp:func:`GetDiffuseWrap <virtual void ART::IMaterial::GetDiffuseWrap(bool &oRepeatU, bool &oRepeatV) const =0>`           
void                                   :cpp:func:`SetTransmission <virtual void ART::IMaterial::SetTransmission(double iTransmission)=0>`                          
double                                 :cpp:func:`GetTransmission <virtual double ART::IMaterial::GetTransmission() const =0>`                                     
void                                   :cpp:func:`SetTransmissionTexture <virtual void ART::IMaterial::SetTransmissionTexture(const RED::Object *iTexture)=0>`     
const :doc:`classRED_1_1Object` *      :cpp:func:`GetTransmissionTexture <virtual const RED::Object * ART::IMaterial::GetTransmissionTexture() const =0>`          
void                                   :cpp:func:`SetTransmissionWrap <virtual void ART::IMaterial::SetTransmissionWrap(bool iRepeatU, bool iRepeatV)=0>`          
void                                   :cpp:func:`GetTransmissionWrap <virtual void ART::IMaterial::GetTransmissionWrap(bool &oRepeatU, bool &oRepeatV) const =0>` 
void                                   :cpp:func:`SetReflectance <virtual void ART::IMaterial::SetReflectance(double iReflectance)=0>`                             
double                                 :cpp:func:`GetReflectance <virtual double ART::IMaterial::GetReflectance() const =0>`                                       
void                                   :cpp:func:`SetReflectanceTexture <virtual void ART::IMaterial::SetReflectanceTexture(const RED::Object *iTexture)=0>`       
const :doc:`classRED_1_1Object` *      :cpp:func:`GetReflectanceTexture <virtual const RED::Object * ART::IMaterial::GetReflectanceTexture() const =0>`            
void                                   :cpp:func:`SetReflectanceWrap <virtual void ART::IMaterial::SetReflectanceWrap(bool iRepeatU, bool iRepeatV)=0>`            
void                                   :cpp:func:`GetReflectanceWrap <virtual void ART::IMaterial::GetReflectanceWrap(bool &oRepeatU, bool &oRepeatV) const =0>`   
void                                   :cpp:func:`SetBumpTexture <virtual void ART::IMaterial::SetBumpTexture(const RED::Object *iTexture)=0>`                     
const :doc:`classRED_1_1Object` *      :cpp:func:`GetBumpTexture <virtual const RED::Object * ART::IMaterial::GetBumpTexture() const =0>`                          
void                                   :cpp:func:`SetBumpWrap <virtual void ART::IMaterial::SetBumpWrap(bool iRepeatU, bool iRepeatV)=0>`                          
void                                   :cpp:func:`GetBumpWrap <virtual void ART::IMaterial::GetBumpWrap(bool &oRepeatU, bool &oRepeatV) const =0>`                 
void                                   :cpp:func:`SetBackDiffuse <virtual void ART::IMaterial::SetBackDiffuse(const RED::Color &iBackDiffuse)=0>`                  
const :doc:`classRED_1_1Color` &       :cpp:func:`GetBackDiffuse <virtual const RED::Color & ART::IMaterial::GetBackDiffuse() const =0>`                           
void                                   :cpp:func:`SetBackDiffuseTexture <virtual void ART::IMaterial::SetBackDiffuseTexture(const RED::Object *iTexture)=0>`       
const :doc:`classRED_1_1Object` *      :cpp:func:`GetBackDiffuseTexture <virtual const RED::Object * ART::IMaterial::GetBackDiffuseTexture() const =0>`            
void                                   :cpp:func:`SetBackDiffuseWrap <virtual void ART::IMaterial::SetBackDiffuseWrap(bool iRepeatU, bool iRepeatV)=0>`            
void                                   :cpp:func:`GetBackDiffuseWrap <virtual void ART::IMaterial::GetBackDiffuseWrap(bool &oRepeatU, bool &oRepeatV) const =0>`   
void                                   :cpp:func:`SetTranslucency <virtual void ART::IMaterial::SetTranslucency(double iTranslucency)=0>`                          
double                                 :cpp:func:`GetTranslucency <virtual double ART::IMaterial::GetTranslucency() const =0>`                                     
void                                   :cpp:func:`SetTranslucencyTexture <virtual void ART::IMaterial::SetTranslucencyTexture(const RED::Object *iTexture)=0>`     
const :doc:`classRED_1_1Object` *      :cpp:func:`GetTranslucencyTexture <virtual const RED::Object * ART::IMaterial::GetTranslucencyTexture() const =0>`          
void                                   :cpp:func:`SetTranslucencyWrap <virtual void ART::IMaterial::SetTranslucencyWrap(bool iRepeatU, bool iRepeatV)=0>`          
void                                   :cpp:func:`GetTranslucencyWrap <virtual void ART::IMaterial::GetTranslucencyWrap(bool &oRepeatU, bool &oRepeatV) const =0>` 
void                                   :cpp:func:`SetIOR <virtual void ART::IMaterial::SetIOR(double iIOR)=0>`                                                     
double                                 :cpp:func:`GetIOR <virtual double ART::IMaterial::GetIOR() const =0>`                                                       
void                                   :cpp:func:`SetIORTexture <virtual void ART::IMaterial::SetIORTexture(const RED::Object *iTexture)=0>`                       
const :doc:`classRED_1_1Object` *      :cpp:func:`GetIORTexture <virtual const RED::Object * ART::IMaterial::GetIORTexture() const =0>`                            
void                                   :cpp:func:`SetIORWrap <virtual void ART::IMaterial::SetIORWrap(bool iRepeatU, bool iRepeatV)=0>`                            
void                                   :cpp:func:`GetIORWrap <virtual void ART::IMaterial::GetIORWrap(bool &oRepeatU, bool &oRepeatV) const =0>`                   
void                                   :cpp:func:`SetGlossiness <virtual void ART::IMaterial::SetGlossiness(double iGlossiness)=0>`                                
double                                 :cpp:func:`GetGlossiness <virtual double ART::IMaterial::GetGlossiness() const =0>`                                         
void                                   :cpp:func:`SetGlossinessTexture <virtual void ART::IMaterial::SetGlossinessTexture(const RED::Object *iTexture)=0>`         
const :doc:`classRED_1_1Object` *      :cpp:func:`GetGlossinessTexture <virtual const RED::Object * ART::IMaterial::GetGlossinessTexture() const =0>`              
void                                   :cpp:func:`SetGlossinessWrap <virtual void ART::IMaterial::SetGlossinessWrap(bool iRepeatU, bool iRepeatV)=0>`              
void                                   :cpp:func:`GetGlossinessWrap <virtual void ART::IMaterial::GetGlossinessWrap(bool &oRepeatU, bool &oRepeatV) const =0>`     
void                                   :cpp:func:`SetAlbedo <virtual void ART::IMaterial::SetAlbedo(const RED::Color &IAlbedo)=0>`                                 
const :doc:`classRED_1_1Color` &       :cpp:func:`GetAlbedo <virtual const RED::Color & ART::IMaterial::GetAlbedo() const =0>`                                     
void                                   :cpp:func:`SetAlbedoTexture <virtual void ART::IMaterial::SetAlbedoTexture(const RED::Object *iTexture)=0>`                 
const :doc:`classRED_1_1Object` *      :cpp:func:`GetAlbedoTexture <virtual const RED::Object * ART::IMaterial::GetAlbedoTexture() const =0>`                      
void                                   :cpp:func:`SetAlbedoWrap <virtual void ART::IMaterial::SetAlbedoWrap(bool iRepeatU, bool iRepeatV)=0>`                      
void                                   :cpp:func:`GetAlbedoWrap <virtual void ART::IMaterial::GetAlbedoWrap(bool &oRepeatU, bool &oRepeatV) const =0>`             
void                                   :cpp:func:`SetRoughness <virtual void ART::IMaterial::SetRoughness(double iRoughness)=0>`                                   
double                                 :cpp:func:`GetRoughness <virtual double ART::IMaterial::GetRoughness() const =0>`                                           
void                                   :cpp:func:`SetRoughnessTexture <virtual void ART::IMaterial::SetRoughnessTexture(const RED::Object *iTexture)=0>`           
const :doc:`classRED_1_1Object` *      :cpp:func:`GetRoughnessTexture <virtual const RED::Object * ART::IMaterial::GetRoughnessTexture() const =0>`                
void                                   :cpp:func:`SetRoughnessWrap <virtual void ART::IMaterial::SetRoughnessWrap(bool iRepeatU, bool iRepeatV)=0>`                
void                                   :cpp:func:`GetRoughnessWrap <virtual void ART::IMaterial::GetRoughnessWrap(bool &oRepeatU, bool &oRepeatV) const =0>`       
void                                   :cpp:func:`SetMetalness <virtual void ART::IMaterial::SetMetalness(double iMetalness)=0>`                                   
double                                 :cpp:func:`GetMetalness <virtual double ART::IMaterial::GetMetalness() const =0>`                                           
void                                   :cpp:func:`SetMetalnessTexture <virtual void ART::IMaterial::SetMetalnessTexture(const RED::Object *iTexture)=0>`           
const :doc:`classRED_1_1Object` *      :cpp:func:`GetMetalnessTexture <virtual const RED::Object * ART::IMaterial::GetMetalnessTexture() const =0>`                
void                                   :cpp:func:`SetMetalnessWrap <virtual void ART::IMaterial::SetMetalnessWrap(bool iRepeatU, bool iRepeatV)=0>`                
void                                   :cpp:func:`GetMetalnessWrap <virtual void ART::IMaterial::GetMetalnessWrap(bool &oRepeatU, bool &oRepeatV) const =0>`       
void                                   :cpp:func:`SetAO <virtual void ART::IMaterial::SetAO(double iAO)=0>`                                                        
double                                 :cpp:func:`GetAO <virtual double ART::IMaterial::GetAO() const =0>`                                                         
void                                   :cpp:func:`SetAOTexture <virtual void ART::IMaterial::SetAOTexture(const RED::Object *iTexture)=0>`                         
const :doc:`classRED_1_1Object` *      :cpp:func:`GetAOTexture <virtual const RED::Object * ART::IMaterial::GetAOTexture() const =0>`                              
void                                   :cpp:func:`SetAOWrap <virtual void ART::IMaterial::SetAOWrap(bool iRepeatU, bool iRepeatV)=0>`                              
void                                   :cpp:func:`GetAOWrap <virtual void ART::IMaterial::GetAOWrap(bool &oRepeatU, bool &oRepeatV) const =0>`                     
void                                   :cpp:func:`SetEmissive <virtual void ART::IMaterial::SetEmissive(const RED::Color &iEmissive)=0>`                           
const :doc:`classRED_1_1Color` &       :cpp:func:`GetEmissive <virtual const RED::Color & ART::IMaterial::GetEmissive() const =0>`                                 
void                                   :cpp:func:`SetEmissiveTexture <virtual void ART::IMaterial::SetEmissiveTexture(const RED::Object *iTexture)=0>`             
const :doc:`classRED_1_1Object` *      :cpp:func:`GetEmissiveTexture <virtual const RED::Object * ART::IMaterial::GetEmissiveTexture() const =0>`                  
void                                   :cpp:func:`SetEmissiveIntensity <virtual void ART::IMaterial::SetEmissiveIntensity(double iIntensity)=0>`                   
double                                 :cpp:func:`GetEmissiveIntensity <virtual double ART::IMaterial::GetEmissiveIntensity() const =0>`                           
void                                   :cpp:func:`SetEmissiveWrap <virtual void ART::IMaterial::SetEmissiveWrap(bool iRepeatU, bool iRepeatV)=0>`                  
void                                   :cpp:func:`GetEmissiveWrap <virtual void ART::IMaterial::GetEmissiveWrap(bool &oRepeatU, bool &oRepeatV) const =0>`         
void                                   :cpp:func:`SetWaterColor <virtual void ART::IMaterial::SetWaterColor(const RED::Color &iColor)=0>`                          
const :doc:`classRED_1_1Color` &       :cpp:func:`GetWaterColor <virtual const RED::Color & ART::IMaterial::GetWaterColor() const =0>`                             
void                                   :cpp:func:`SetWaterRefractIOR <virtual void ART::IMaterial::SetWaterRefractIOR(double iRefractIOR)=0>`                      
double                                 :cpp:func:`GetWaterRefractIOR <virtual double ART::IMaterial::GetWaterRefractIOR() const =0>`                               
void                                   :cpp:func:`SetTransmittance <virtual void ART::IMaterial::SetTransmittance(double iTransmittance)=0>`                       
double                                 :cpp:func:`GetTransmittance <virtual double ART::IMaterial::GetTransmittance() const =0>`                                   
void                                   :cpp:func:`SetRippleSpeed <virtual void ART::IMaterial::SetRippleSpeed(double iRippleSpeed)=0>`                             
double                                 :cpp:func:`GetRippleSpeed <virtual double ART::IMaterial::GetRippleSpeed() const =0>`                                       
void                                   :cpp:func:`SetRippleStrength <virtual void ART::IMaterial::SetRippleStrength(double iRippleStrength)=0>`                    
double                                 :cpp:func:`GetRippleStrength <virtual double ART::IMaterial::GetRippleStrength() const =0>`                                 
void                                   :cpp:func:`SetFlowOrientation <virtual void ART::IMaterial::SetFlowOrientation(double iFlowOrientation)=0>`                 
double                                 :cpp:func:`GetFlowOrientation <virtual double ART::IMaterial::GetFlowOrientation() const =0>`                               
void                                   :cpp:func:`SetFlowSpeed <virtual void ART::IMaterial::SetFlowSpeed(double iFlowSpeed)=0>`                                   
double                                 :cpp:func:`GetFlowSpeed <virtual double ART::IMaterial::GetFlowSpeed() const =0>`                                           
void                                   :cpp:func:`SetWaterPlaneNormal <virtual void ART::IMaterial::SetWaterPlaneNormal(const RED::Color &iNormal)=0>`             
const :doc:`classRED_1_1Color` &       :cpp:func:`GetWaterPlaneNormal <virtual const RED::Color & ART::IMaterial::GetWaterPlaneNormal() const =0>`                 
void                                   :cpp:func:`SetWaterDepth <virtual void ART::IMaterial::SetWaterDepth(double iDepth)=0>`                                     
double                                 :cpp:func:`GetWaterDepth <virtual double ART::IMaterial::GetWaterDepth() const =0>`                                         
void                                   :cpp:func:`SetMatrix <virtual void ART::IMaterial::SetMatrix(const RED::Matrix &iMatrix)=0>`                                
const :doc:`classRED_1_1Matrix` &      :cpp:func:`GetMatrix <virtual const RED::Matrix & ART::IMaterial::GetMatrix() const =0>`                                    
void                                   :cpp:func:`SetChannel <virtual void ART::IMaterial::SetChannel(RED::MESH_CHANNEL iChannel)=0>`                              
:cpp:enumerator:`~RED::MESH_CHANNEL`   :cpp:func:`GetChannel <virtual RED::MESH_CHANNEL ART::IMaterial::GetChannel() const =0>`                                    
void                                   :cpp:func:`SetMasked <virtual void ART::IMaterial::SetMasked(bool iMasked)=0>`                                              
bool                                   :cpp:func:`IsMasked <virtual bool ART::IMaterial::IsMasked() const =0>`                                                     
void                                   :cpp:func:`SetDoubleSided <virtual void ART::IMaterial::SetDoubleSided(bool iDoubleSided)=0>`                               
bool                                   :cpp:func:`IsDoubleSided <virtual bool ART::IMaterial::IsDoubleSided() const =0>`                                           
bool                                   :cpp:func:`HasTransparency <virtual bool ART::IMaterial::HasTransparency() const =0>`                                       
void                                   :cpp:func:`SetAlphaThreshold <virtual void ART::IMaterial::SetAlphaThreshold(double iThreshold)=0>`                         
double                                 :cpp:func:`GetAlphaThreshold <virtual double ART::IMaterial::GetAlphaThreshold() const =0>`                                 
====================================== ============================================================================================================================

.. cpp:namespace:: nullptr

Detailed Description
====================

.. doxygenclass:: ART::IMaterial
   :project: RED
   :members:
   :undoc-members:



