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

#include <GUI_GeoRender.h>

Classes

class  gui_BoundaryData
 

Public Member Functions

 GUI_GeoRender (GUI_DetailLook *look, const char *name, int geo_index, int name_index)
 
virtual ~GUI_GeoRender ()
 
virtual const char * className () const
 
virtual bool isLopRender () const
 
void setGeometry (OP_Node *node)
 
OP_NodegetGeometry () const
 
void setGeoName (const char *name)
 
void setInstanceName (const char *name)
 
const char * getCacheName () const
 
void setGeoIndex (int idx)
 
int getGeoIndex () const
 
void setNameIndex (int idx)
 
int getNameIndex () const
 
int getNodeID () const
 
void setDetailHandle (const GU_ConstDetailHandle &handle)
 
virtual GU_ConstDetailHandlegetDetailHandle ()
 
void setDisplayed (bool is_disp)
 
bool isDisplayed () const
 
bool setDetailTransform (const UT_DMatrix4 &xform)
 
const UT_DMatrix4getDetailTransform (int index) const
 
const UT_DMatrix4getDetailInvTransform (int index) const
 
int getNumDetailTransforms () const
 
void setDetailFullTransform (const UT_DMatrix4 &xform)
 
const UT_DMatrix4getDetailFullTransform () const
 
void setInstancerTransform (const UT_DMatrix4 &xform)
 
void setInstancerTransformIdentity ()
 
const UT_DMatrix4getInstancerTransform () const
 
void setLocalBBox (const UT_BoundingBox &bbox, int)
 
const UT_BoundingBoxlocalBBox ()
 
virtual int getBoundingBox2D (UT_BoundingBox &bbox, const char *name, int use_vertex) const
 
virtual int getBoundingBox3D (UT_BoundingBox &bbox, const UT_Matrix3R *rot) const
 
void setIsInstancedGeo (bool instanced)
 
bool addInstanceTransform (const UT_DMatrix4 &xform, int geo_index)
 
void clearInstanceTransforms ()
 
void setInstanceVersion (int64 version)
 
int64 getInstanceVersion () const
 
virtual GUI_SetupResult setup (const GUI_DisplayOption &disp_opt, GUI_DisplaySetType state, bool show_selection, GR_DecorationOverride selmask_dec, GR_DecorationOverride &select_dec, bool &needs_alpha, bool is_current)
 
virtual bool fastSetup (const GUI_DisplayOption &disp_opt)
 
virtual void update (RE_Render *r, GR_DisplayOption *opt, GUI_SetupResult setup_reason, GR_DecorationOverride selmask_dec, const char *view_name, bool &needs_alpha, const GR_FrustumList &view_frustums)
 
virtual void cleanup (RE_Render *r)
 
bool isSetup () const
 
bool needsAlphaPass () const
 
void retire ()
 
void hide ()
 
bool isLit () const
 
bool hasGuideParts () const
 
bool forceWireframe () const
 
bool forceShaded () const
 
void setPostPassID (int id)
 
int getPostPassID () const
 
bool needsDeferredPass () const
 
void setDeferredPass (bool dpass)
 
fpreal getSetupTime () const
 
fpreal getDrawTime () const
 
virtual bool isObjectRender () const
 
bool hasMaterialReflection () const
 
void setGhosted (bool ghost)
 
void setObjectSelection (int obj_selection)
 
bool getComponentSelection (const GR_DisplayOption *opt, GR_SelectionAdapter &adapter) const
 
virtual void wireframeRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_RenderMode mode, GR_RenderFlags render_flags)
 
virtual GUI_RenderPassFlags beautyRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_ShadingPass shade_pass, GR_AlphaPass alphapass, GR_RenderMode mode, GR_RenderFlags render_flags)
 
virtual void utilityRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_RenderMode mode, GR_RenderFlags rflags)
 
virtual void postPassRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_AlphaPass apass)
 
virtual void bboxRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_RenderMode render_mode)
 
void renderMatteHighlights (RE_Render *r, GUI_DisplayOption &disp_opt, GR_RenderFlags render_flags)
 
void onionSkinRender (RE_Render *r, GUI_DisplayOption &disp_opt)
 
virtual int64 getPrimDecorationMask () const
 
virtual void setupDecorationsRender (RE_Render *r)
 
virtual void decorationRender (RE_Render *r, GUI_DisplayOption &disp_opt, GR_Decoration dec, GR_DecorVisibility vis, bool override_dispopt, GR_DecorRenderFlags render_flags)
 
virtual void customDecorationRender (RE_Render *r, GUI_DisplayOption &disp_opts, const GR_VisualizerInfo *dec, GR_DecorRenderFlags flags)
 
bool canBeSelected (OP_Node *op, GUI_DisplayOption &disp_opt, bool pick_template, bool pick_non_sel, bool pick_ghost, OBJ_Node **node=nullptr) const
 
bool canBeSelectedWhenNotUsingOps (GUI_DisplayOption &disp_opt, bool pick_template, bool pick_non_sel, bool pick_ghost) const
 
virtual void objectPick (RE_Render *r, GUI_DisplayOption &opts, GR_RenderFlags render_flags, const GR_ObjectPickFlags &pick_flags, bool force_wire)
 
virtual int componentPick (RE_Render *r, GUI_DisplayOption &opts, unsigned int primmask, GEO_PrimTypeCompat::TypeMask primask, GR_PickStyle pickstyle, bool has_pick_map, UT_Array< GR_PickRecord > *pick_records)
 
GUI_DetailLooklook () const
 
const char * name () const
 
void setupLighting (RE_LightList *list, bool headlight)
 
void cleanupLighting ()
 
void bumpObjectMaterial ()
 
void useObjectMaterials (bool use_obj_mat)
 
bool getAssignedMaterials (UT_Array< OP_Node * > &nodes) const
 
int getObjectMaterialID () const
 
void adoptAtlas (const RE_MaterialAtlas &from_atlas)
 
bool isBboxShadingMode (const GR_DisplayOption *opt) const
 
bool isBboxShadingMode (GUI_DisplayOption &opt) const
 
bool prepReflectionMap (RE_Render *r, GUI_DisplayOption &opt, int64 version, fpreal time)
 
void startReflectionPass (RE_Render *r, RE_TextureCubeFace f)
 
void endReflectionPass (RE_Render *r)
 
void finishReflectionMap (RE_Render *r, GUI_DisplayOption &opt)
 
RE_TexturegetReflectionMap () const
 
exint getVisUpdateTime () const
 
exint getVisRefineTime () const
 
void refreshVisUpdateTime ()
 
void refreshVisRefineTime ()
 
bool hasUpdateVisualizer (int vis_id) const
 
bool hasRefineVisualizer (int vis_id) const
 
const UT_IntArraygetActiveVisualizers () const
 
const UT_IntArraygetUpdateVisualizers () const
 
const UT_IntArraygetRefineVisualizers () const
 
void refreshUpdateVisualizers ()
 
void clearUpdateVisualizers ()
 
void refreshRefineVisualizers ()
 
void clearRefineVisualizers ()
 
void runCreatorVisualizers (int &listcount, UT_Array< GT_PrimitiveHandle > &handles)
 
GUI_VisFlags getActiveVisFlags (int prim_idx, GUI_VisContext context) const
 
const GT_DataArrayHandle findCachedAttribute (const char *attrib_name, GT_Owner owner=GT_OWNER_INVALID) const
 
virtual const
GEO_DetachedHedgeInterface
getHedgeInterface (bool use_hidden_grp)
 
virtual const GEO_PrimClassifiergetPrimClassifier (GU_Connectivity con)
 
virtual const GA_EdgeGroupgetHiddenEdgeGroup ()
 
virtual const GA_ElementGroupgetVisibleElementGroup (GA_GroupType t)
 
bool isMSSEnabled () const
 
bool isMSSPackedEnabled () const
 
bool isMSSPerPrimEnabled () const
 
bool areOverridesEnabled () const
 
int getMaterialLimit () const
 
void setMaterialLimitExceeded (bool e)
 
void invalidateGeo ()
 

Static Public Member Functions

static void setWorldToScreen (const UT_Matrix4R &xform)
 
static void setupRender (RE_Render *r, GR_RenderMode mode)
 
static void cleanupRender (RE_Render *r, GR_RenderMode mode)
 
static void resetStats ()
 
static void getStats (int &num_objs, int &num_polys, int &num_vertices)
 
static const RE_MaterialPtrgetDefaultMaterial (bool lit)
 
static void setDefaultMaterialParms (UT_Color diff, UT_Color spec, UT_Color amb, UT_Color emit)
 
static int getPolygonMeshLimit ()
 
static int getPointMeshLimit ()
 
static void handleMaterialChange (OP_Node *src, void *dest, OP_EventType type, void *data)
 
static bool registerHook (GUI_PrimitiveHook *hook, GT_PrimitiveType gt_type, int geo_type, int priority, GUI_PrimitiveHookFlags flags)
 

Protected Types

enum  FetchBufResult {
  FETCH_NO_GEO_ATTRIB, FETCH_NO_SHADER_ATTRIB, FETCH_CACHED, FETCH_FILLED,
  FETCH_ERROR
}
 

Protected Member Functions

virtual void updateGLSpecific (RE_Render *r, GR_DisplayOption *opts, GUI_SetupResult setup_reason, GR_DecorationOverride selmask_dec, const char *view_name, const GU_Detail *dtl)
 
virtual void cleanupMaterials ()
 
virtual bool shouldRender (const GU_Detail *geo) const
 
int getNumPrimitives () const
 
GR_PrimitivegetPrimitive (int index) const
 
GR_DisplayOptiongetDisplayOptionSet (GUI_DisplayOption &disp_opt)
 
const GR_DisplayOptiongetDisplayOptionSet (const GUI_DisplayOption &disp_opt) const
 
virtual void wireRender (RE_Render *r, GUI_DisplayOption &disp_opt, const GU_Detail *geo, GR_RenderMode mode, GR_RenderFlags flags)
 
virtual void solidRender (RE_Render *r, GUI_DisplayOption &disp_opt, const GU_Detail *geo, GR_RenderMode mode, GR_RenderFlags flags, GR_AlphaPass pass)
 
virtual void simpleRender (RE_Render *r, GUI_DisplayOption &opt, const GU_Detail *geo, GR_RenderMode mode, GR_RenderFlags flags)
 
virtual void simpleBboxRender (RE_Render *r, GUI_DisplayOption &opt, RE_Shader *shader=0, bool fill=true, bool outline=true)
 
GR_DecorationOverride getSelectionDecorations (const GR_DisplayOption *opt) const
 
bool isClosureSelection (GU_SelectionHandle sel, bool &has_edges) const
 
bool isClosureSelection (GR_SelectionAdapter &sel, bool &has_edges) const
 
void prepMaterials (RE_Render *r, const GR_DisplayOption *opts)
 
void setupWireSelectParms (RE_Render *r, GUI_DisplayOption &disp_opts, bool is_wireframe, GR_RenderFlags &flags)
 
void cleanupWireSelectParms (RE_Render *r)
 
void setObjectMatrixUniform (RE_Render *r)
 
void updatePrimitives (RE_Render *r, GR_DisplayOption *opts, UT_Array< GT_PrimitiveHandle > &hlist, GT_RefineParms &refine_opts, GR_UpdateReason reason, GR_DecorationOverride req_dec, const char *view_name, const GR_FrustumList &view_frustums)
 
void processPrimitives (const GU_ConstDetailHandle &geo, GT_PrimitiveHandle &ph, GT_RefineParms &refparms, int &listcount, const GR_DisplayOption &dispopt, GR_UpdateReason reason, const char *cache_name, UT_Array< GT_PrimitiveHandle > &handles)
 
bool processPrim (const GU_ConstDetailHandle &geo, GT_PrimitiveHandle &ph, GT_RefineParms &refparms, int &listcount, const GR_DisplayOption &dispopt, GR_UpdateReason reason, const char *cache_name, UT_Array< GT_PrimitiveHandle > &handles, bool apply_filter_vis, int &packed_index)
 
void processAlembicArchive (GT_PrimitiveHandle &ph, const GU_ConstDetailHandle &gdh, GT_RefineParms &refparms, int &listcount, const GR_DisplayOption &dispopt, GR_UpdateReason reason, const char *cache_name, UT_Array< GT_PrimitiveHandle > &handles, exint mat_id)
 
void clearUnusedAlembicArchives ()
 
void renderMatteGroupColors (RE_Render *r, GUI_GroupDataHandle group_data, GR_DisplayOption *opt, GR_RenderFlags render_flags)
 
void renderPrims (RE_Render *r, GR_DisplayOption *opt, GR_RenderMode mode, GR_RenderFlags flags, GR_AlphaPass alphapass, bool use_materials)
 
bool createOrReuseRefinedPrim (GT_PrimitiveHandle &ph, const GU_ConstDetailHandle &gdh, const GEO_Primitive *geo_prim, int &listcount, const GR_DisplayOption &disp, GR_UpdateReason reason, const GT_RefineParms &ref_parms, const char *cache_name, UT_Array< GT_PrimitiveHandle > &handles, bool processing_geo_prims, bool apply_filter_vis, int packed_index, int64 mat_id)
 
GR_PrimAcceptResult checkForExistingPrim (GT_PrimitiveHandle &ph, GR_Primitive *prim, int pindex, GR_UpdateReason reason, const GT_RefineParms &ref_parms, const GU_ConstDetailHandle &gdh, const GEO_Primitive *geo_prim, int &listcount, UT_Array< GT_PrimitiveHandle > &hdl, bool processing_geo_prims, int packed_index)
 
void accumulateTime (RE_Render *r)
 
void buildEdgeHighlight (RE_Render *r, const GU_Detail *geo, GR_UpdateReason reason, const GR_DisplayOption *opt, const char *view_name)
 
bool buildInstanceSelection (bool has_sel_overrides)
 
fpreal getPointInstanceFraction (GR_DisplayOption *opts) const
 
UT_Matrix4DArraygetPointInstanceTransforms (GR_DisplayOption *opts)
 
RE_CacheVersion getGeoVersion (const GU_Detail *geo, const GR_DisplayOption *opt)
 
RE_CacheVersion getSelectionVersion (const GU_Detail *geo, const GR_DisplayOption *opt)
 
RE_CacheVersion getEdgeHighlightVersion (const GU_Detail *geo, const GR_DisplayOption *opt, bool include_selection)
 
void setSelection (int64 id, int64 version)
 
GR_PrimAcceptResult processHookPrimitive (GT_PrimitiveHandle &gt_prim, const GEO_Primitive *geo_prim, const GU_ConstDetailHandle &gdh, GR_UpdateReason reason, const GT_RefineParms &ref_parms, const char *cache_name, GR_Primitive *&created, int &list_index, int &hook_priority, bool &filtered_prim, gui_RenderHookEntry *&prev, UT_Array< GT_PrimitiveHandle > &hdls, bool processing_geo_prims, int packed_index)
 
void processFilterHooks (GT_PrimitiveHandle &gt_prim, const GEO_Primitive *geo_prim)
 
void restartCollectionPrimitives ()
 
void removeUnusedCollectionPrimitives ()
 
void find3DBoundaries (const GU_Detail *geo, const GA_PrimitiveGroup *within_prims, GA_EdgeGroup *boundary_group)
 
void findUVBoundaries (const GU_Detail *geo, const GA_PrimitiveGroup *within_prims, GA_EdgeGroup *uv_boundary_group, const GA_ROHandleV2 &uv, bool vert_uvs)
 
bool matchesVersion (gui_BoundaryData &bdata, const UT_StringHolder &attrib_name, const RE_CacheVersion &ver, bool view_3d, bool vert_uv)
 
void createEdgeGeo (RE_Render *r, gui_BoundaryData &bdata, const GA_EdgeGroup *edges, bool is_3d, bool is_vertex, const UT_StringHolder &attrib_name, const UT_StringHolder &cache_suffix, const GU_Detail *geo, const RE_CacheVersion &ev, GA_ROHandleV2 *uvhandle=nullptr)
 
GR_RenderInfogetRenderInfo ()
 
void getRefineParms (RE_Render *r, const GR_DisplayOption *opts, GT_RefineParms &p) const
 
void resizePrimArray (exint nprims, bool clear=false)
 
void assignPrim (exint index, GR_Primitive *prim, const GT_PrimitiveHandle &gtprim)
 
void updateWorldTransform ()
 

Protected Attributes

const GU_DetailmyLockedDetail
 
RE_MaterialAtlas myMaterialAtlas
 
GUI_ObjectMaterialCache * myObjectMaterialCache
 
UT_Map< UT_StringRef, intmyAttributes
 
int64 myEdgePrimsVersion
 
UT_SharedPtr< GA_PrimitiveGroupmyEdgePrims
 
gui_BoundaryData my3DBoundary
 
UT_StringMap< gui_BoundaryDatamyUVBoundary
 
UT_StringMap< bool > myUVAttribIsVertex
 
gui_BoundaryData myEdgeSelection
 
bool myHasEdgeSelection
 
int64 myUVAttribSerial
 
int64 myInstanceVersion
 
int64 myLimitInstanceVersion
 
int myViewSerial
 
int myViewID
 
RE_LightListmyLightList
 
bool myUseHeadlight
 
int64 myPrimDecorMask
 

Static Protected Attributes

static UT_Lock theShaderLock
 
static RE_MaterialPtr theDefaultMaterial [2]
 
static int theNumObjects
 
static int theNumPolys
 
static int theNumVertices
 

Friends

class gr_PrimEntry
 

Detailed Description

Definition at line 77 of file GUI_GeoRender.h.

Member Enumeration Documentation

Enumerator
FETCH_NO_GEO_ATTRIB 
FETCH_NO_SHADER_ATTRIB 
FETCH_CACHED 
FETCH_FILLED 
FETCH_ERROR 

Definition at line 537 of file GUI_GeoRender.h.

Constructor & Destructor Documentation

GUI_GeoRender::GUI_GeoRender ( GUI_DetailLook look,
const char *  name,
int  geo_index,
int  name_index 
)
virtual GUI_GeoRender::~GUI_GeoRender ( )
virtual

Member Function Documentation

void GUI_GeoRender::accumulateTime ( RE_Render r)
protected
bool GUI_GeoRender::addInstanceTransform ( const UT_DMatrix4 xform,
int  geo_index 
)
void GUI_GeoRender::adoptAtlas ( const RE_MaterialAtlas from_atlas)
bool GUI_GeoRender::areOverridesEnabled ( ) const
inline

Definition at line 460 of file GUI_GeoRender.h.

void GUI_GeoRender::assignPrim ( exint  index,
GR_Primitive prim,
const GT_PrimitiveHandle gtprim 
)
protected
virtual void GUI_GeoRender::bboxRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_RenderMode  render_mode 
)
virtual
virtual GUI_RenderPassFlags GUI_GeoRender::beautyRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_ShadingPass  shade_pass,
GR_AlphaPass  alphapass,
GR_RenderMode  mode,
GR_RenderFlags  render_flags 
)
virtual
void GUI_GeoRender::buildEdgeHighlight ( RE_Render r,
const GU_Detail geo,
GR_UpdateReason  reason,
const GR_DisplayOption opt,
const char *  view_name 
)
protected
bool GUI_GeoRender::buildInstanceSelection ( bool  has_sel_overrides)
protected
void GUI_GeoRender::bumpObjectMaterial ( )
inline

Definition at line 354 of file GUI_GeoRender.h.

bool GUI_GeoRender::canBeSelected ( OP_Node op,
GUI_DisplayOption disp_opt,
bool  pick_template,
bool  pick_non_sel,
bool  pick_ghost,
OBJ_Node **  node = nullptr 
) const
bool GUI_GeoRender::canBeSelectedWhenNotUsingOps ( GUI_DisplayOption disp_opt,
bool  pick_template,
bool  pick_non_sel,
bool  pick_ghost 
) const
GR_PrimAcceptResult GUI_GeoRender::checkForExistingPrim ( GT_PrimitiveHandle ph,
GR_Primitive prim,
int  pindex,
GR_UpdateReason  reason,
const GT_RefineParms ref_parms,
const GU_ConstDetailHandle gdh,
const GEO_Primitive geo_prim,
int listcount,
UT_Array< GT_PrimitiveHandle > &  hdl,
bool  processing_geo_prims,
int  packed_index 
)
protected
virtual const char* GUI_GeoRender::className ( void  ) const
inlinevirtual

Definition at line 86 of file GUI_GeoRender.h.

virtual void GUI_GeoRender::cleanup ( RE_Render r)
virtual
void GUI_GeoRender::cleanupLighting ( )
virtual void GUI_GeoRender::cleanupMaterials ( )
inlineprotectedvirtual

Definition at line 478 of file GUI_GeoRender.h.

static void GUI_GeoRender::cleanupRender ( RE_Render r,
GR_RenderMode  mode 
)
static
void GUI_GeoRender::cleanupWireSelectParms ( RE_Render r)
protected
void GUI_GeoRender::clearInstanceTransforms ( )
void GUI_GeoRender::clearRefineVisualizers ( )
inline

Definition at line 425 of file GUI_GeoRender.h.

void GUI_GeoRender::clearUnusedAlembicArchives ( )
protected
void GUI_GeoRender::clearUpdateVisualizers ( )
inline

Definition at line 419 of file GUI_GeoRender.h.

virtual int GUI_GeoRender::componentPick ( RE_Render r,
GUI_DisplayOption opts,
unsigned int  primmask,
GEO_PrimTypeCompat::TypeMask  primask,
GR_PickStyle  pickstyle,
bool  has_pick_map,
UT_Array< GR_PickRecord > *  pick_records 
)
virtual
void GUI_GeoRender::createEdgeGeo ( RE_Render r,
gui_BoundaryData bdata,
const GA_EdgeGroup edges,
bool  is_3d,
bool  is_vertex,
const UT_StringHolder attrib_name,
const UT_StringHolder cache_suffix,
const GU_Detail geo,
const RE_CacheVersion ev,
GA_ROHandleV2 uvhandle = nullptr 
)
protected
bool GUI_GeoRender::createOrReuseRefinedPrim ( GT_PrimitiveHandle ph,
const GU_ConstDetailHandle gdh,
const GEO_Primitive geo_prim,
int listcount,
const GR_DisplayOption disp,
GR_UpdateReason  reason,
const GT_RefineParms ref_parms,
const char *  cache_name,
UT_Array< GT_PrimitiveHandle > &  handles,
bool  processing_geo_prims,
bool  apply_filter_vis,
int  packed_index,
int64  mat_id 
)
protected
virtual void GUI_GeoRender::customDecorationRender ( RE_Render r,
GUI_DisplayOption disp_opts,
const GR_VisualizerInfo dec,
GR_DecorRenderFlags  flags 
)
virtual
virtual void GUI_GeoRender::decorationRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_Decoration  dec,
GR_DecorVisibility  vis,
bool  override_dispopt,
GR_DecorRenderFlags  render_flags 
)
virtual
void GUI_GeoRender::endReflectionPass ( RE_Render r)
virtual bool GUI_GeoRender::fastSetup ( const GUI_DisplayOption disp_opt)
virtual
void GUI_GeoRender::find3DBoundaries ( const GU_Detail geo,
const GA_PrimitiveGroup within_prims,
GA_EdgeGroup boundary_group 
)
protected
const GT_DataArrayHandle GUI_GeoRender::findCachedAttribute ( const char *  attrib_name,
GT_Owner  owner = GT_OWNER_INVALID 
) const
void GUI_GeoRender::findUVBoundaries ( const GU_Detail geo,
const GA_PrimitiveGroup within_prims,
GA_EdgeGroup uv_boundary_group,
const GA_ROHandleV2 uv,
bool  vert_uvs 
)
protected
void GUI_GeoRender::finishReflectionMap ( RE_Render r,
GUI_DisplayOption opt 
)
bool GUI_GeoRender::forceShaded ( ) const
inline

Definition at line 207 of file GUI_GeoRender.h.

bool GUI_GeoRender::forceWireframe ( ) const
inline

Definition at line 204 of file GUI_GeoRender.h.

GUI_VisFlags GUI_GeoRender::getActiveVisFlags ( int  prim_idx,
GUI_VisContext  context 
) const
const UT_IntArray& GUI_GeoRender::getActiveVisualizers ( ) const
inline

Definition at line 407 of file GUI_GeoRender.h.

bool GUI_GeoRender::getAssignedMaterials ( UT_Array< OP_Node * > &  nodes) const
virtual int GUI_GeoRender::getBoundingBox2D ( UT_BoundingBox bbox,
const char *  name,
int  use_vertex 
) const
virtual
virtual int GUI_GeoRender::getBoundingBox3D ( UT_BoundingBox bbox,
const UT_Matrix3R rot 
) const
virtual
const char* GUI_GeoRender::getCacheName ( ) const
inline

Definition at line 98 of file GUI_GeoRender.h.

bool GUI_GeoRender::getComponentSelection ( const GR_DisplayOption opt,
GR_SelectionAdapter adapter 
) const
static const RE_MaterialPtr& GUI_GeoRender::getDefaultMaterial ( bool  lit)
static
const UT_DMatrix4& GUI_GeoRender::getDetailFullTransform ( ) const
inline

Definition at line 126 of file GUI_GeoRender.h.

virtual GU_ConstDetailHandle& GUI_GeoRender::getDetailHandle ( )
inlinevirtual

Definition at line 111 of file GUI_GeoRender.h.

const UT_DMatrix4 & GUI_GeoRender::getDetailInvTransform ( int  index) const
inline

Definition at line 1057 of file GUI_GeoRender.h.

const UT_DMatrix4 & GUI_GeoRender::getDetailTransform ( int  index) const
inline

Definition at line 1051 of file GUI_GeoRender.h.

GR_DisplayOption* GUI_GeoRender::getDisplayOptionSet ( GUI_DisplayOption disp_opt)
inlineprotected

Definition at line 485 of file GUI_GeoRender.h.

const GR_DisplayOption* GUI_GeoRender::getDisplayOptionSet ( const GUI_DisplayOption disp_opt) const
inlineprotected

Definition at line 488 of file GUI_GeoRender.h.

fpreal GUI_GeoRender::getDrawTime ( ) const
inline

Definition at line 220 of file GUI_GeoRender.h.

RE_CacheVersion GUI_GeoRender::getEdgeHighlightVersion ( const GU_Detail geo,
const GR_DisplayOption opt,
bool  include_selection 
)
protected
int GUI_GeoRender::getGeoIndex ( ) const
inline

Definition at line 102 of file GUI_GeoRender.h.

OP_Node* GUI_GeoRender::getGeometry ( ) const
RE_CacheVersion GUI_GeoRender::getGeoVersion ( const GU_Detail geo,
const GR_DisplayOption opt 
)
protected
virtual const GEO_DetachedHedgeInterface* GUI_GeoRender::getHedgeInterface ( bool  use_hidden_grp)
virtual
virtual const GA_EdgeGroup* GUI_GeoRender::getHiddenEdgeGroup ( )
virtual
const UT_DMatrix4& GUI_GeoRender::getInstancerTransform ( ) const
inline

Definition at line 137 of file GUI_GeoRender.h.

int64 GUI_GeoRender::getInstanceVersion ( ) const
inline

Definition at line 1045 of file GUI_GeoRender.h.

int GUI_GeoRender::getMaterialLimit ( ) const
inline

Definition at line 462 of file GUI_GeoRender.h.

int GUI_GeoRender::getNameIndex ( ) const
inline

Definition at line 104 of file GUI_GeoRender.h.

int GUI_GeoRender::getNodeID ( ) const
inline

Definition at line 107 of file GUI_GeoRender.h.

int GUI_GeoRender::getNumDetailTransforms ( ) const
inline

Definition at line 122 of file GUI_GeoRender.h.

int GUI_GeoRender::getNumPrimitives ( ) const
inlineprotected

Definition at line 481 of file GUI_GeoRender.h.

int GUI_GeoRender::getObjectMaterialID ( ) const
inline

Definition at line 359 of file GUI_GeoRender.h.

fpreal GUI_GeoRender::getPointInstanceFraction ( GR_DisplayOption opts) const
protected
UT_Matrix4DArray* GUI_GeoRender::getPointInstanceTransforms ( GR_DisplayOption opts)
protected
static int GUI_GeoRender::getPointMeshLimit ( )
static
static int GUI_GeoRender::getPolygonMeshLimit ( )
static
int GUI_GeoRender::getPostPassID ( ) const
inline

Definition at line 211 of file GUI_GeoRender.h.

virtual const GEO_PrimClassifier* GUI_GeoRender::getPrimClassifier ( GU_Connectivity  con)
virtual
virtual int64 GUI_GeoRender::getPrimDecorationMask ( ) const
inlinevirtual

Definition at line 280 of file GUI_GeoRender.h.

GR_Primitive* GUI_GeoRender::getPrimitive ( int  index) const
protected
void GUI_GeoRender::getRefineParms ( RE_Render r,
const GR_DisplayOption opts,
GT_RefineParms p 
) const
protected
const UT_IntArray& GUI_GeoRender::getRefineVisualizers ( ) const
inline

Definition at line 413 of file GUI_GeoRender.h.

RE_Texture* GUI_GeoRender::getReflectionMap ( ) const
GR_RenderInfo& GUI_GeoRender::getRenderInfo ( )
inlineprotected

Definition at line 718 of file GUI_GeoRender.h.

GR_DecorationOverride GUI_GeoRender::getSelectionDecorations ( const GR_DisplayOption opt) const
protected
RE_CacheVersion GUI_GeoRender::getSelectionVersion ( const GU_Detail geo,
const GR_DisplayOption opt 
)
protected
fpreal GUI_GeoRender::getSetupTime ( ) const
inline

Definition at line 219 of file GUI_GeoRender.h.

static void GUI_GeoRender::getStats ( int num_objs,
int num_polys,
int num_vertices 
)
static
const UT_IntArray& GUI_GeoRender::getUpdateVisualizers ( ) const
inline

Definition at line 410 of file GUI_GeoRender.h.

virtual const GA_ElementGroup* GUI_GeoRender::getVisibleElementGroup ( GA_GroupType  t)
virtual
exint GUI_GeoRender::getVisRefineTime ( ) const
inline

Definition at line 390 of file GUI_GeoRender.h.

exint GUI_GeoRender::getVisUpdateTime ( ) const
inline

Definition at line 387 of file GUI_GeoRender.h.

static void GUI_GeoRender::handleMaterialChange ( OP_Node src,
void dest,
OP_EventType  type,
void data 
)
static
bool GUI_GeoRender::hasGuideParts ( ) const
inline

Definition at line 201 of file GUI_GeoRender.h.

bool GUI_GeoRender::hasMaterialReflection ( ) const
inline

Definition at line 224 of file GUI_GeoRender.h.

bool GUI_GeoRender::hasRefineVisualizer ( int  vis_id) const
inline

Definition at line 404 of file GUI_GeoRender.h.

bool GUI_GeoRender::hasUpdateVisualizer ( int  vis_id) const
inline

Definition at line 401 of file GUI_GeoRender.h.

void GUI_GeoRender::hide ( )
void GUI_GeoRender::invalidateGeo ( )
bool GUI_GeoRender::isBboxShadingMode ( const GR_DisplayOption opt) const
inline

Definition at line 363 of file GUI_GeoRender.h.

bool GUI_GeoRender::isBboxShadingMode ( GUI_DisplayOption opt) const
inline

Definition at line 369 of file GUI_GeoRender.h.

bool GUI_GeoRender::isClosureSelection ( GU_SelectionHandle  sel,
bool &  has_edges 
) const
protected
bool GUI_GeoRender::isClosureSelection ( GR_SelectionAdapter sel,
bool &  has_edges 
) const
protected
bool GUI_GeoRender::isDisplayed ( ) const
inline

Definition at line 116 of file GUI_GeoRender.h.

bool GUI_GeoRender::isLit ( ) const
inline

Definition at line 198 of file GUI_GeoRender.h.

virtual bool GUI_GeoRender::isLopRender ( ) const
inlinevirtual

Definition at line 88 of file GUI_GeoRender.h.

bool GUI_GeoRender::isMSSEnabled ( ) const
inline

Definition at line 457 of file GUI_GeoRender.h.

bool GUI_GeoRender::isMSSPackedEnabled ( ) const
inline

Definition at line 458 of file GUI_GeoRender.h.

bool GUI_GeoRender::isMSSPerPrimEnabled ( ) const
inline

Definition at line 459 of file GUI_GeoRender.h.

virtual bool GUI_GeoRender::isObjectRender ( ) const
inlinevirtual

Definition at line 222 of file GUI_GeoRender.h.

bool GUI_GeoRender::isSetup ( ) const
inline

Definition at line 187 of file GUI_GeoRender.h.

const UT_BoundingBox& GUI_GeoRender::localBBox ( )
GUI_DetailLook& GUI_GeoRender::look ( ) const
inline

Definition at line 334 of file GUI_GeoRender.h.

bool GUI_GeoRender::matchesVersion ( gui_BoundaryData bdata,
const UT_StringHolder attrib_name,
const RE_CacheVersion ver,
bool  view_3d,
bool  vert_uv 
)
protected
const char* GUI_GeoRender::name ( void  ) const
inline

Definition at line 335 of file GUI_GeoRender.h.

bool GUI_GeoRender::needsAlphaPass ( ) const
inline

Definition at line 188 of file GUI_GeoRender.h.

bool GUI_GeoRender::needsDeferredPass ( ) const
inline

Definition at line 214 of file GUI_GeoRender.h.

virtual void GUI_GeoRender::objectPick ( RE_Render r,
GUI_DisplayOption opts,
GR_RenderFlags  render_flags,
const GR_ObjectPickFlags pick_flags,
bool  force_wire 
)
virtual
void GUI_GeoRender::onionSkinRender ( RE_Render r,
GUI_DisplayOption disp_opt 
)
virtual void GUI_GeoRender::postPassRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_AlphaPass  apass 
)
virtual
void GUI_GeoRender::prepMaterials ( RE_Render r,
const GR_DisplayOption opts 
)
protected
bool GUI_GeoRender::prepReflectionMap ( RE_Render r,
GUI_DisplayOption opt,
int64  version,
fpreal  time 
)
void GUI_GeoRender::processAlembicArchive ( GT_PrimitiveHandle ph,
const GU_ConstDetailHandle gdh,
GT_RefineParms refparms,
int listcount,
const GR_DisplayOption dispopt,
GR_UpdateReason  reason,
const char *  cache_name,
UT_Array< GT_PrimitiveHandle > &  handles,
exint  mat_id 
)
protected
void GUI_GeoRender::processFilterHooks ( GT_PrimitiveHandle gt_prim,
const GEO_Primitive geo_prim 
)
protected
GR_PrimAcceptResult GUI_GeoRender::processHookPrimitive ( GT_PrimitiveHandle gt_prim,
const GEO_Primitive geo_prim,
const GU_ConstDetailHandle gdh,
GR_UpdateReason  reason,
const GT_RefineParms ref_parms,
const char *  cache_name,
GR_Primitive *&  created,
int list_index,
int hook_priority,
bool &  filtered_prim,
gui_RenderHookEntry *&  prev,
UT_Array< GT_PrimitiveHandle > &  hdls,
bool  processing_geo_prims,
int  packed_index 
)
protected
bool GUI_GeoRender::processPrim ( const GU_ConstDetailHandle geo,
GT_PrimitiveHandle ph,
GT_RefineParms refparms,
int listcount,
const GR_DisplayOption dispopt,
GR_UpdateReason  reason,
const char *  cache_name,
UT_Array< GT_PrimitiveHandle > &  handles,
bool  apply_filter_vis,
int packed_index 
)
protected
void GUI_GeoRender::processPrimitives ( const GU_ConstDetailHandle geo,
GT_PrimitiveHandle ph,
GT_RefineParms refparms,
int listcount,
const GR_DisplayOption dispopt,
GR_UpdateReason  reason,
const char *  cache_name,
UT_Array< GT_PrimitiveHandle > &  handles 
)
protected
void GUI_GeoRender::refreshRefineVisualizers ( )
inline

Definition at line 422 of file GUI_GeoRender.h.

void GUI_GeoRender::refreshUpdateVisualizers ( )
inline

Definition at line 416 of file GUI_GeoRender.h.

void GUI_GeoRender::refreshVisRefineTime ( )
inline

Definition at line 397 of file GUI_GeoRender.h.

void GUI_GeoRender::refreshVisUpdateTime ( )
inline

Definition at line 393 of file GUI_GeoRender.h.

static bool GUI_GeoRender::registerHook ( GUI_PrimitiveHook hook,
GT_PrimitiveType  gt_type,
int  geo_type,
int  priority,
GUI_PrimitiveHookFlags  flags 
)
static
void GUI_GeoRender::removeUnusedCollectionPrimitives ( )
protected
void GUI_GeoRender::renderMatteGroupColors ( RE_Render r,
GUI_GroupDataHandle  group_data,
GR_DisplayOption opt,
GR_RenderFlags  render_flags 
)
protected
void GUI_GeoRender::renderMatteHighlights ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_RenderFlags  render_flags 
)
void GUI_GeoRender::renderPrims ( RE_Render r,
GR_DisplayOption opt,
GR_RenderMode  mode,
GR_RenderFlags  flags,
GR_AlphaPass  alphapass,
bool  use_materials 
)
protected
static void GUI_GeoRender::resetStats ( )
static
void GUI_GeoRender::resizePrimArray ( exint  nprims,
bool  clear = false 
)
protected
void GUI_GeoRender::restartCollectionPrimitives ( )
protected
void GUI_GeoRender::retire ( )
void GUI_GeoRender::runCreatorVisualizers ( int listcount,
UT_Array< GT_PrimitiveHandle > &  handles 
)
static void GUI_GeoRender::setDefaultMaterialParms ( UT_Color  diff,
UT_Color  spec,
UT_Color  amb,
UT_Color  emit 
)
static
void GUI_GeoRender::setDeferredPass ( bool  dpass)
inline

Definition at line 216 of file GUI_GeoRender.h.

void GUI_GeoRender::setDetailFullTransform ( const UT_DMatrix4 xform)
inline

Definition at line 124 of file GUI_GeoRender.h.

void GUI_GeoRender::setDetailHandle ( const GU_ConstDetailHandle handle)
bool GUI_GeoRender::setDetailTransform ( const UT_DMatrix4 xform)
void GUI_GeoRender::setDisplayed ( bool  is_disp)
inline

Definition at line 115 of file GUI_GeoRender.h.

void GUI_GeoRender::setGeoIndex ( int  idx)
inline

Definition at line 101 of file GUI_GeoRender.h.

void GUI_GeoRender::setGeometry ( OP_Node node)
void GUI_GeoRender::setGeoName ( const char *  name)
void GUI_GeoRender::setGhosted ( bool  ghost)
inline

Definition at line 227 of file GUI_GeoRender.h.

void GUI_GeoRender::setInstanceName ( const char *  name)
void GUI_GeoRender::setInstancerTransform ( const UT_DMatrix4 xform)
inline

Definition at line 131 of file GUI_GeoRender.h.

void GUI_GeoRender::setInstancerTransformIdentity ( )
inline

Definition at line 134 of file GUI_GeoRender.h.

void GUI_GeoRender::setInstanceVersion ( int64  version)
inline

Definition at line 1039 of file GUI_GeoRender.h.

void GUI_GeoRender::setIsInstancedGeo ( bool  instanced)
void GUI_GeoRender::setLocalBBox ( const UT_BoundingBox bbox,
int   
)
inline

Definition at line 141 of file GUI_GeoRender.h.

void GUI_GeoRender::setMaterialLimitExceeded ( bool  e)
inline

Definition at line 463 of file GUI_GeoRender.h.

void GUI_GeoRender::setNameIndex ( int  idx)
inline

Definition at line 103 of file GUI_GeoRender.h.

void GUI_GeoRender::setObjectMatrixUniform ( RE_Render r)
protected
void GUI_GeoRender::setObjectSelection ( int  obj_selection)
inline

Definition at line 229 of file GUI_GeoRender.h.

void GUI_GeoRender::setPostPassID ( int  id)
inline

Definition at line 210 of file GUI_GeoRender.h.

void GUI_GeoRender::setSelection ( int64  id,
int64  version 
)
inlineprotected

Definition at line 656 of file GUI_GeoRender.h.

virtual GUI_SetupResult GUI_GeoRender::setup ( const GUI_DisplayOption disp_opt,
GUI_DisplaySetType  state,
bool  show_selection,
GR_DecorationOverride  selmask_dec,
GR_DecorationOverride select_dec,
bool &  needs_alpha,
bool  is_current 
)
virtual
virtual void GUI_GeoRender::setupDecorationsRender ( RE_Render r)
virtual
void GUI_GeoRender::setupLighting ( RE_LightList list,
bool  headlight 
)
static void GUI_GeoRender::setupRender ( RE_Render r,
GR_RenderMode  mode 
)
static
void GUI_GeoRender::setupWireSelectParms ( RE_Render r,
GUI_DisplayOption disp_opts,
bool  is_wireframe,
GR_RenderFlags flags 
)
protected
static void GUI_GeoRender::setWorldToScreen ( const UT_Matrix4R xform)
static
virtual bool GUI_GeoRender::shouldRender ( const GU_Detail geo) const
protectedvirtual
virtual void GUI_GeoRender::simpleBboxRender ( RE_Render r,
GUI_DisplayOption opt,
RE_Shader shader = 0,
bool  fill = true,
bool  outline = true 
)
inlineprotectedvirtual

Definition at line 515 of file GUI_GeoRender.h.

virtual void GUI_GeoRender::simpleRender ( RE_Render r,
GUI_DisplayOption opt,
const GU_Detail geo,
GR_RenderMode  mode,
GR_RenderFlags  flags 
)
inlineprotectedvirtual

Definition at line 509 of file GUI_GeoRender.h.

virtual void GUI_GeoRender::solidRender ( RE_Render r,
GUI_DisplayOption disp_opt,
const GU_Detail geo,
GR_RenderMode  mode,
GR_RenderFlags  flags,
GR_AlphaPass  pass 
)
inlineprotectedvirtual

Definition at line 502 of file GUI_GeoRender.h.

void GUI_GeoRender::startReflectionPass ( RE_Render r,
RE_TextureCubeFace  f 
)
virtual void GUI_GeoRender::update ( RE_Render r,
GR_DisplayOption opt,
GUI_SetupResult  setup_reason,
GR_DecorationOverride  selmask_dec,
const char *  view_name,
bool &  needs_alpha,
const GR_FrustumList view_frustums 
)
virtual
virtual void GUI_GeoRender::updateGLSpecific ( RE_Render r,
GR_DisplayOption opts,
GUI_SetupResult  setup_reason,
GR_DecorationOverride  selmask_dec,
const char *  view_name,
const GU_Detail dtl 
)
inlineprotectedvirtual

Definition at line 470 of file GUI_GeoRender.h.

void GUI_GeoRender::updatePrimitives ( RE_Render r,
GR_DisplayOption opts,
UT_Array< GT_PrimitiveHandle > &  hlist,
GT_RefineParms refine_opts,
GR_UpdateReason  reason,
GR_DecorationOverride  req_dec,
const char *  view_name,
const GR_FrustumList view_frustums 
)
protected
void GUI_GeoRender::updateWorldTransform ( )
protected
void GUI_GeoRender::useObjectMaterials ( bool  use_obj_mat)
virtual void GUI_GeoRender::utilityRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_RenderMode  mode,
GR_RenderFlags  rflags 
)
virtual
virtual void GUI_GeoRender::wireframeRender ( RE_Render r,
GUI_DisplayOption disp_opt,
GR_RenderMode  mode,
GR_RenderFlags  render_flags 
)
virtual
virtual void GUI_GeoRender::wireRender ( RE_Render r,
GUI_DisplayOption disp_opt,
const GU_Detail geo,
GR_RenderMode  mode,
GR_RenderFlags  flags 
)
protectedvirtual

Friends And Related Function Documentation

friend class gr_PrimEntry
friend

Definition at line 1035 of file GUI_GeoRender.h.

Member Data Documentation

int64 GUI_GeoRender::cache_version

Definition at line 1000 of file GUI_GeoRender.h.

int GUI_GeoRender::detail_id

Definition at line 999 of file GUI_GeoRender.h.

UT_UniquePtr<GEO_DetachedHedgeInterface> GUI_GeoRender::interface

Definition at line 998 of file GUI_GeoRender.h.

gui_BoundaryData GUI_GeoRender::my3DBoundary
protected

Definition at line 746 of file GUI_GeoRender.h.

UT_Map<UT_StringRef,int> GUI_GeoRender::myAttributes
protected

Definition at line 741 of file GUI_GeoRender.h.

UT_SharedPtr<GA_PrimitiveGroup> GUI_GeoRender::myEdgePrims
protected

Definition at line 744 of file GUI_GeoRender.h.

int64 GUI_GeoRender::myEdgePrimsVersion
protected

Definition at line 743 of file GUI_GeoRender.h.

gui_BoundaryData GUI_GeoRender::myEdgeSelection
protected

Definition at line 749 of file GUI_GeoRender.h.

bool GUI_GeoRender::myHasEdgeSelection
protected

Definition at line 750 of file GUI_GeoRender.h.

int64 GUI_GeoRender::myInstanceVersion
protected

Definition at line 753 of file GUI_GeoRender.h.

RE_LightList* GUI_GeoRender::myLightList
protected

Definition at line 758 of file GUI_GeoRender.h.

int64 GUI_GeoRender::myLimitInstanceVersion
protected

Definition at line 754 of file GUI_GeoRender.h.

const GU_Detail* GUI_GeoRender::myLockedDetail
protected

Definition at line 738 of file GUI_GeoRender.h.

RE_MaterialAtlas GUI_GeoRender::myMaterialAtlas
protected

Definition at line 739 of file GUI_GeoRender.h.

GUI_ObjectMaterialCache* GUI_GeoRender::myObjectMaterialCache
protected

Definition at line 740 of file GUI_GeoRender.h.

int64 GUI_GeoRender::myPrimDecorMask
protected

Definition at line 760 of file GUI_GeoRender.h.

bool GUI_GeoRender::myUseHeadlight
protected

Definition at line 759 of file GUI_GeoRender.h.

UT_StringMap<bool> GUI_GeoRender::myUVAttribIsVertex
protected

Definition at line 748 of file GUI_GeoRender.h.

int64 GUI_GeoRender::myUVAttribSerial
protected

Definition at line 751 of file GUI_GeoRender.h.

UT_StringMap<gui_BoundaryData> GUI_GeoRender::myUVBoundary
protected

Definition at line 747 of file GUI_GeoRender.h.

int GUI_GeoRender::myViewID
protected

Definition at line 756 of file GUI_GeoRender.h.

int GUI_GeoRender::myViewSerial
protected

Definition at line 755 of file GUI_GeoRender.h.

RE_MaterialPtr GUI_GeoRender::theDefaultMaterial[2]
staticprotected

Definition at line 732 of file GUI_GeoRender.h.

int GUI_GeoRender::theNumObjects
staticprotected

Definition at line 734 of file GUI_GeoRender.h.

int GUI_GeoRender::theNumPolys
staticprotected

Definition at line 735 of file GUI_GeoRender.h.

int GUI_GeoRender::theNumVertices
staticprotected

Definition at line 736 of file GUI_GeoRender.h.

UT_Lock GUI_GeoRender::theShaderLock
staticprotected

Definition at line 731 of file GUI_GeoRender.h.

int64 GUI_GeoRender::top_version

Definition at line 1001 of file GUI_GeoRender.h.


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