HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GR_HairMaterial Class Reference

#include <GR_MaterialTypes.h>

+ Inheritance diagram for GR_HairMaterial:

Classes

struct  Defaults
 

Public Member Functions

 HAIR_PARM (fpreal32, DiffIntensity)
 
 HAIR_PARM (UT_Vector3F, DiffRootColor)
 
 HAIR_PARM (UT_Vector3F, DiffTipColor)
 
 HAIR_PARM (fpreal32, SpecIntensity)
 
 HAIR_PARM (fpreal32, SpecAngle)
 
 HAIR_PARM (UT_Vector3F, SpecRootColor)
 
 HAIR_PARM (UT_Vector3F, SpecTipColor)
 
 HAIR_PARM (fpreal32, SpecShift)
 
 HAIR_PARM (fpreal32, HairAlpha)
 
 HAIR_PARM (int32, RandomDiffHue)
 
 HAIR_PARM (UT_Vector2F, RandomDiffHueRange)
 
 HAIR_PARM (int32, RandomDiffSat)
 
 HAIR_PARM (UT_Vector2F, RandomDiffSatRange)
 
 HAIR_PARM (int32, RandomDiffInt)
 
 HAIR_PARM (UT_Vector2F, RandomDiffIntRange)
 
 HAIR_PARM (int32, RandomSpecInt)
 
 HAIR_PARM (UT_Vector2F, RandomSpecIntRange)
 
 HAIR_PARM (fpreal32, Metal)
 
 HAIR_PARM (UT_Vector3F, MetalColor)
 
 TEXMAP_PARM (DiffRootTipBlendMap, DiffRootTipBlendID)
 
 TEXMAP_PARM (SpecRootTipBlendMap, SpecRootTipBlendID)
 
 TEXMAP_PARM (AlphaRootTipBlendMap, AlphaRootTipBlendID)
 
 TEXMAP_PARM (DiffuseMap, DiffuseID)
 
 TEXMAP_PARM (OpacityMap, OpacityID)
 
 TEXMAP_PARM (SpecularMap, SpecularID)
 
 TEXMAP_PARM (EmissionMap, EmissionID)
 
 HAIR_PARM (int32, HasDiffRootTipBlend)
 
 HAIR_PARM (int32, HasSpecRootTipBlend)
 
 HAIR_PARM (int32, HasAlphaRootTipBlend)
 
 HAIR_PARM (int32, HasDiffuse)
 
 HAIR_PARM (int32, HasSpecular)
 
 HAIR_PARM (int32, HasDiffuseUV)
 
 HAIR_PARM (int32, HasSpecularUV)
 
 HAIR_PARM (UT_Matrix4F, DiffuseUV)
 
 HAIR_PARM (UT_Matrix4F, SpecularUV)
 
 HAIR_PARM (UT_Vector4i, DiffuseUDIMArea)
 
 HAIR_PARM (UT_Vector4i, SpecularUDIMArea)
 
void update (const GR_MaterialParms &options) override
 
bool initMaterialSetForRender (RV_Render *r, RV_ShaderProgram *shader, bool &created) override
 
bool initBlocks (RV_Render *r, const GR_DisplayOption *opts) override
 
void dirtyTextures () override
 
- Public Member Functions inherited from GR_Material
MaterialType type () const
 
int getNodeID () const
 
void setNodeID (int id)
 
UT_StringHolder getNodePath () const
 
void setTimeDependent (bool timedep, fpreal t=0.0)
 
void setOPTimeDependent (bool timedep, fpreal t=0.0)
 
bool isTimeDependent () const
 
bool isOPTimeDependent () const
 
fpreal getCurrentTime () const
 
bool isDirty (fpreal time)
 
void dirty (bool dirty=true)
 
bool isTextured () const
 
void setTextured (bool has_tex)
 
bool hasUDIM () const
 
void setHasUDIM (bool has_udim)
 
bool hasDisplacement () const
 
void setHasDisplacement (bool has_disp)
 
bool needsUVs () const
 
void setNeedsUVs (bool uvs)
 
bool needsTangents () const
 
void setNeedsTangents (bool tan)
 
bool isTransparent () const
 
void setTransparent (bool has_tex)
 
bool texturesLoaded () const
 
void setTexturesLoaded (bool loaded)
 
bool bindWithoutUpdate (RV_Render *r, RV_ShaderProgram *shader, const GR_DisplayOption *opts, bool for_curve=false)
 
bool bind (RV_Render *r, RV_ShaderProgram *shader, const GR_DisplayOption *opts, bool for_curve=false)
 
bool bindSets (RV_Render *r, RV_ShaderProgram *shader, bool for_curve)
 
DEP_MicroNodedependencies ()
 
virtual RV_ShaderProgramgetSurfaceShader () const
 
virtual RV_ShaderProgramgetCurveShader () const
 
bool opDependenciesDirty () const
 
void clearOpDependenciesDirty ()
 
const UT_Set< intopDependencies () const
 
void setOverrides (const UT_Options *overrides)
 
const UT_OptionsgetOverrides () const
 
void setFallbacks (const UT_Options *attrib_fallbacks)
 
const UT_OptionsgetFallbacks () const
 
void setExtraInputs (const UT_StringMap< InputType > &extra_inputs)
 
const UT_StringMap< InputType > & extraInputs () const
 
- Public Member Functions inherited from GR_SceneItem
const UT_StringHoldername () const
 
exint id () const
 
int64 getVersion () const
 
void setVersion (int64 v)
 
void incref ()
 
void decref ()
 
void setName (const UT_StringHolder &name)
 
void setID (int id)
 

Protected Member Functions

 GR_HairMaterial (const UT_StringHolder &name)
 
 UT_NON_COPYABLE (GR_HairMaterial)
 
- Protected Member Functions inherited from GR_Material
 GR_Material (const UT_StringHolder &name, MaterialType type)
 
 ~GR_Material () override
 
 UT_NON_COPYABLE (GR_Material)
 
void clearOpIDs ()
 
void addOpID (int id)
 
bool timeChangeCheck () const
 
- Protected Member Functions inherited from GR_SceneItem
 GR_SceneItem (const UT_StringHolder &name, int id)
 
virtual ~GR_SceneItem ()
 
 UT_NON_COPYABLE (GR_SceneItem)
 

Friends

class GR_Material
 

Additional Inherited Members

- Public Types inherited from GR_Material
enum  AlphaMode { ALPHA_BLEND = 0, ALPHA_CUTOUT, ALPHA_IGNORE }
 
enum  MaterialType {
  SIMPLE_SURFACE, UNLIT_SURFACE, FILM_SURFACE, HAIR_CURVE,
  HEIGHTFIELD_SURFACE, MATX_SURFACE, MATCAP_SURFACE
}
 
enum  InputType {
  IN_INT, IN_FLOAT, IN_VEC2, IN_VEC3,
  IN_VEC4
}
 
- Static Public Member Functions inherited from GR_Material
static GR_MaterialPtr create (MaterialType type, const UT_StringHolder &name)
 
static exint getUniqueMaterialID ()
 
- Protected Attributes inherited from GR_Material
bool myDirtyFlag
 
bool myBlockDirtyFlag
 

Detailed Description

Definition at line 429 of file GR_MaterialTypes.h.

Constructor & Destructor Documentation

GR_HairMaterial::GR_HairMaterial ( const UT_StringHolder name)
protected

Member Function Documentation

void GR_HairMaterial::dirtyTextures ( )
inlineoverridevirtual

Reimplemented from GR_Material.

Definition at line 516 of file GR_MaterialTypes.h.

GR_HairMaterial::HAIR_PARM ( fpreal32  ,
DiffIntensity   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector3F  ,
DiffRootColor   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector3F  ,
DiffTipColor   
)
GR_HairMaterial::HAIR_PARM ( fpreal32  ,
SpecIntensity   
)
GR_HairMaterial::HAIR_PARM ( fpreal32  ,
SpecAngle   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector3F  ,
SpecRootColor   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector3F  ,
SpecTipColor   
)
GR_HairMaterial::HAIR_PARM ( fpreal32  ,
SpecShift   
)
GR_HairMaterial::HAIR_PARM ( fpreal32  ,
HairAlpha   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
RandomDiffHue   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector2F  ,
RandomDiffHueRange   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
RandomDiffSat   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector2F  ,
RandomDiffSatRange   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
RandomDiffInt   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector2F  ,
RandomDiffIntRange   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
RandomSpecInt   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector2F  ,
RandomSpecIntRange   
)
GR_HairMaterial::HAIR_PARM ( fpreal32  ,
Metal   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector3F  ,
MetalColor   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasDiffRootTipBlend   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasSpecRootTipBlend   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasAlphaRootTipBlend   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasDiffuse   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasSpecular   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasDiffuseUV   
)
GR_HairMaterial::HAIR_PARM ( int32  ,
HasSpecularUV   
)
GR_HairMaterial::HAIR_PARM ( UT_Matrix4F  ,
DiffuseUV   
)
GR_HairMaterial::HAIR_PARM ( UT_Matrix4F  ,
SpecularUV   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector4i  ,
DiffuseUDIMArea   
)
GR_HairMaterial::HAIR_PARM ( UT_Vector4i  ,
SpecularUDIMArea   
)
bool GR_HairMaterial::initBlocks ( RV_Render r,
const GR_DisplayOption opts 
)
overridevirtual

Implements GR_Material.

bool GR_HairMaterial::initMaterialSetForRender ( RV_Render r,
RV_ShaderProgram shader,
bool &  created 
)
overridevirtual

Implements GR_Material.

GR_HairMaterial::TEXMAP_PARM ( DiffRootTipBlendMap  ,
DiffRootTipBlendID   
)
GR_HairMaterial::TEXMAP_PARM ( SpecRootTipBlendMap  ,
SpecRootTipBlendID   
)
GR_HairMaterial::TEXMAP_PARM ( AlphaRootTipBlendMap  ,
AlphaRootTipBlendID   
)
GR_HairMaterial::TEXMAP_PARM ( DiffuseMap  ,
DiffuseID   
)
GR_HairMaterial::TEXMAP_PARM ( OpacityMap  ,
OpacityID   
)
GR_HairMaterial::TEXMAP_PARM ( SpecularMap  ,
SpecularID   
)
GR_HairMaterial::TEXMAP_PARM ( EmissionMap  ,
EmissionID   
)
void GR_HairMaterial::update ( const GR_MaterialParms options)
overridevirtual

Implements GR_Material.

GR_HairMaterial::UT_NON_COPYABLE ( GR_HairMaterial  )
protected

Friends And Related Function Documentation

friend class GR_Material
friend

Definition at line 522 of file GR_MaterialTypes.h.


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