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

More of a builtin material for the MatCap display mode. More...

#include <GR_MaterialTypes.h>

+ Inheritance diagram for GR_MatCapMaterial:

Public Member Functions

 TEXMAP_PARM (DiffuseMap, DiffuseID)
 
 TEXMAP_PARM (EmissionMap, EmissionID)
 
 MATPARM (fpreal32, Intensity)
 
void setUDIM (const UT_Vector4i &udim)
 
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_MatCapMaterial (const UT_StringHolder &name, MaterialType type=MATCAP_SURFACE)
 
 UT_NON_COPYABLE (GR_MatCapMaterial)
 
- 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)
 

Protected Attributes

struct {
   UT_Vector4i   udim_area
 
   fpreal32   Intensity = 1.0
 
mySimpleBlock
 
bool myTexDirtyFlag = true
 
- Protected Attributes inherited from GR_Material
bool myDirtyFlag
 
bool myBlockDirtyFlag
 

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

Detailed Description

More of a builtin material for the MatCap display mode.

Definition at line 157 of file GR_MaterialTypes.h.

Constructor & Destructor Documentation

GR_MatCapMaterial::GR_MatCapMaterial ( const UT_StringHolder name,
MaterialType  type = MATCAP_SURFACE 
)
protected

Member Function Documentation

void GR_MatCapMaterial::dirtyTextures ( )
inlineoverridevirtual

Reimplemented from GR_Material.

Definition at line 173 of file GR_MaterialTypes.h.

bool GR_MatCapMaterial::initBlocks ( RV_Render r,
const GR_DisplayOption opts 
)
overridevirtual

Implements GR_Material.

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

Implements GR_Material.

GR_MatCapMaterial::MATPARM ( fpreal32  ,
Intensity   
)
void GR_MatCapMaterial::setUDIM ( const UT_Vector4i udim)
inline

Definition at line 164 of file GR_MaterialTypes.h.

GR_MatCapMaterial::TEXMAP_PARM ( DiffuseMap  ,
DiffuseID   
)
GR_MatCapMaterial::TEXMAP_PARM ( EmissionMap  ,
EmissionID   
)
void GR_MatCapMaterial::update ( const GR_MaterialParms options)
overridevirtual

Implements GR_Material.

GR_MatCapMaterial::UT_NON_COPYABLE ( GR_MatCapMaterial  )
protected

Friends And Related Function Documentation

friend class GR_Material
friend

Definition at line 180 of file GR_MaterialTypes.h.

Member Data Documentation

fpreal32 GR_MatCapMaterial::Intensity = 1.0

Definition at line 185 of file GR_MaterialTypes.h.

struct { ... } GR_MatCapMaterial::mySimpleBlock
bool GR_MatCapMaterial::myTexDirtyFlag = true
protected

Definition at line 188 of file GR_MaterialTypes.h.

UT_Vector4i GR_MatCapMaterial::udim_area

Definition at line 184 of file GR_MaterialTypes.h.


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