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

#include <GR_OSDSubdSurfaceGL4.h>

+ Inheritance diagram for GR_OSDSubdSurfaceGL4:

Public Member Functions

 GR_OSDSubdSurfaceGL4 (GR_Primitive *prim)
 
 ~GR_OSDSubdSurfaceGL4 () override
 
const char * className () const override
 
void update (RE_Render *r, const GT_PrimitiveHandle &primh, const GR_UpdateParms &p, const char *cache_name) override
 
void draw (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, GR_DrawParms dp) override
 Normal drawing method. Only issue rendering commands. More...
 
- Public Member Functions inherited from GR_PolySurfaceGL3
 GR_PolySurfaceGL3 (GR_Primitive *prim, bool needs_convexing=false)
 
 ~GR_PolySurfaceGL3 () override
 
const char * className () const override
 
void draw (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, GR_DrawParms dp) override
 Normal drawing method. Only issue rendering commands. More...
 
bool supportsInstances () const override
 By default, no instanced drawing support. More...
 
bool isConvexed () const override
 
bool canFrustumCull () override
 
- Public Member Functions inherited from GR_PolySurface
 GR_PolySurface (GR_Primitive *prim, bool needs_convexing)
 
 ~GR_PolySurface () override
 
void update (RE_Render *r, const GT_PrimitiveHandle &primh, const GR_UpdateParms &p, const char *cache_name) override
 
bool hasTransparency () const override
 returns true if this drawable renders some transparent elements More...
 
GT_PrimitiveHandle getConvexGeometry ()
 
exint getNumGLPrimitives () const override
 
- Public Member Functions inherited from GR_GeoRender
 GR_GeoRender (GR_Primitive *parent_prim)
 
virtual ~GR_GeoRender ()
 
virtual void updateInstanceGroupArray (const RE_VertexArray *array, int instance_group=-1, const char *attrib_name=NULL, RE_GenericAttribID id=RE_GENATTRIB_NONE)
 
virtual void viewUpdate (RE_Render *r, const GR_DisplayOption &opts, const char *cache_name, RE_CacheVersion geo_version, RE_CacheVersion select_version)
 
RE_GeometrycreateGeometry (int npoints=0)
 
RE_GeometrygetGeometry ()
 
virtual void geometryUpdated (RE_Render *)
 
bool showSelections () const
 
GR_RenderVersion getRenderVersion () const
 
bool inViewFrustum (const UT_Matrix4D &objviewproj, const UT_BoundingBoxD *bbox)
 
bool isRasterizedInView (const UT_Matrix4F &objviewproj, const UT_Vector2F &min_proj_size, const UT_BoundingBoxF *bbox=nullptr)
 
GR_BasePrimType getParentType () const
 
void buildInformation (bool prim_id, bool point_id)
 
bool shouldBuildPrimID () const
 
bool shouldBuildPointID () const
 
void setSelectionMask (GR_AttribMask selection_mask)
 
GR_AttribMask getSelectionMask () const
 
void setSelectionDisplayMode (GR_SelectMode m)
 
GR_SelectMode getSelectionDisplayMode () const
 
void setSelectionInstance (int i)
 
int getSelectionInstance () const
 
void setMaterialOverride (int mat_index)
 
void clearMaterialOverride ()
 
bool getDetailPrimID (int &id) const
 
void setupGeoOverride (RE_Render *r, const GR_DisplayOption *opt, RE_Geometry *geo, UT_UniquePtr< RE_OverrideList > &override_list)
 
void cleanupGeoOverride (RE_Render *r, const GR_DisplayOption *opt, RE_Geometry *geo)
 
void allowGeoOverride (bool allow_overrides)
 
void addUpdateMessage (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addUpdateWarning (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addUpdateError (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addUpdateFatal (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addRedrawMessage (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addRedrawWarning (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addRedrawError (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
void addRedrawFatal (GR_ErrorManager::Source err_source, GR_ErrorCode gr_code, UT_StringHolder extra_text=UT_StringHolder(), UT_StringHolder src_name=UT_StringHolder())
 
GT_DataArrayHandle buildPointIDData (const GT_Primitive &prim, const GU_ConstDetailHandle &geo, int npoints)
 
GT_DataArrayHandle buildPrimitiveIDData (const GT_Primitive &prim, const GU_ConstDetailHandle &geo)
 
void setGeoBounds (const UT_BoundingBox &b)
 
const UT_BoundingBoxDgetGeoBounds () const
 

Additional Inherited Members

- Static Public Member Functions inherited from GR_PolySurface
static GR_PolySurfacecreate (GR_Primitive *parent, bool convex)
 
- Static Public Member Functions inherited from GR_GeoRender
static RE_VertexArraygetDirtyAttribArray (RE_Render *r, RE_Geometry *geo, const char *attrib_name, const GT_DataArrayHandle &h, const GR_DisplayOption &opts, RE_ArrayType atype, RE_CacheVersion attr_version)
 
static void fillGeoAttribs (RE_Render *r, const GT_Primitive *prim, const GR_UpdateParms &p, RE_Geometry *geo, bool needs_nml, bool needs_uv, bool needs_tangent, bool need_prim_vert_info, const GT_DataArrayHandle &point_norm, GR_BasePrimType packed_type, bool build_point_id, bool build_prim_id, GR_GeoRender *geo_ren=nullptr, bool *has_detail_prim_id=nullptr, int *detail_prim_id=nullptr, int *num_bone_deform=nullptr)
 
- Protected Member Functions inherited from GR_PolySurfaceGL3
void drawBeauty (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, GR_DrawParms dp)
 
void drawUtility (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, GR_DrawParms dp)
 
void drawHiddenLine (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, GR_DrawParms dp)
 
int buildSurfaceAttributes (RE_Render *r, const GT_Primitive *prim, const GR_UpdateParms &parms, bool needs_normal, bool needs_uv, bool needs_tangent)
 
bool getGeometryHasColor () const
 
RE_ShadergetMaterialShader (RE_Render *r, GR_RenderMode mode, GR_RenderFlags flags, int nlights, int prim_vertex, bool has_color_attrib, bool draw_textures, bool needs_displacement, bool multi_material, bool fill_selections, bool has_prim_transforms, bool is_lops, bool need_tangent)
 
void updateBoneTransforms (RE_Render *r, const GT_DataArrayHandle &a) override
 
int numMaterials () const override
 
- Protected Member Functions inherited from GR_PolySurface
void retireGeometry () override
 
GT_PrimitiveHandle convexWithEdgeInfo (const GT_PrimPolygonMesh *pmesh, GT_DataArrayHandle &ph, GT_DataArrayHandle &vh, GT_DataArrayHandle &vch)
 
GT_DataArrayHandle getPointNormals ()
 
void freePointNormals ()
 
- Protected Member Functions inherited from GR_GeoRender
void initLights (RE_Render *r, RE_Shader *sh, GR_RenderMode mode, GR_RenderFlags flags, const GR_DisplayOption *opt)
 
GR_AttribMask hasAttribute (const GT_Primitive *prim, const char *name, GT_DataArrayHandle &h) const
 
void buildPointID (RE_Render *r, const GT_Primitive &prim, const GU_ConstDetailHandle &geo, RE_CacheVersion geo_version)
 
void buildPrimitiveID (RE_Render *r, const GT_Primitive &primh, const GU_ConstDetailHandle &geo, RE_CacheVersion geo_version)
 
GR_SelectMode buildSelection (RE_Render *r, const GR_UpdateParms &parms, RE_Geometry &obj, const GT_PrimitiveHandle &primh, const GT_DataArrayHandle &vertexlist)
 
GR_SelectMode addToPointSelection (RE_Render *r, RE_VertexArray *select_array, int length, const GU_Detail &geo, const GT_DataArrayHandle &vh, const GT_DataArrayHandle &vl, const GA_PointGroup *pntsel, bool use_vertex_for_point_select, bool &init)
 
GR_SelectMode addToVertexSelection (RE_Render *r, RE_VertexArray *select_array, int length, const GU_Detail &geo, const GT_DataArrayHandle &vh, const GA_VertexGroup *vertsel, bool &init)
 
GR_SelectMode addToEdgeSelection (RE_Render *r, RE_VertexArray *select_array, int length, const GU_Detail &geo, const GT_DataArrayHandle &vt, const GT_DataArrayHandle &vert_list, const GA_EdgeGroup *edgesel, bool &init)
 
GR_SelectMode addToPrimSelection (RE_Render *r, RE_VertexArray *sel_array, const GT_DataArrayHandle &vh, const GA_PrimitiveGroup *primsel, bool &init)
 
virtual GR_SelectMode addToBreakpointSelection (RE_Render *r, RE_VertexArray *select, int bpnt_len, const GA_BreakpointGroup *bps, bool &init)
 
GR_SelectMode buildInstanceSelection (RE_Render *r, const GR_UpdateParms &p, RE_Geometry &obj)
 
void fillAttributesGL3 (RE_Render *r, const GT_Primitive *prim, const GR_UpdateParms &p, RE_Geometry *geo, bool needs_nml, bool needs_uv, bool needs_tangent, bool need_prim_vert_info, const GT_DataArrayHandle &point_norm)
 
virtual int setupSelection (RE_Render *r, const GR_DisplayOption *opt, GR_RenderFlags flags, bool supports_outline=false) const
 
virtual void cleanupSelection (RE_Render *r, int key) const
 Clean up selection uniforms; much be paired with a setupSelection(). More...
 
GT_PrimitiveHandle getCachedGTPrimitive ()
 
void cacheGTPrimitive (GT_PrimitiveHandle &primh)
 
void updateWireColor (RE_Render *r, RE_Geometry *geo, const GR_DisplayOption *opt, int start_draw_idx, int num_draw_idx=1) const
 
int getCurrentLayer () const
 
- Protected Attributes inherited from GR_PolySurface
bool myHasAlpha
 
bool myHasVertexUV
 
bool myHasTransparentMaterial
 
- Protected Attributes inherited from GR_GeoRender
RE_GeometrymyGeometry
 
const GR_RenderInfomyInfo
 
GR_MaterialGroups myMatGroups
 
UT_BoundingBoxD myBounds
 
unsigned myBuildPointInfo: 1
 
unsigned myBuildPrimInfo: 1
 
unsigned myHasDetailPrimID: 1
 
unsigned myHasInstancedTransform: 1
 
unsigned myHasIdentityTransform: 1
 
unsigned myUseBoneDeform: 1
 
unsigned myNumBoneDeform: 2
 
unsigned myAllowGeoOverride: 1
 
UT_Matrix4D myPrimitiveTransform
 
GR_AttribMask mySelectionMask
 
GR_SelectMode myCurrentSelection
 
int myCurrentPointSelectInstance
 
int myMaterialOverride
 
int myConvexFlag
 
int myDetailPrimID
 

Detailed Description

Definition at line 22 of file GR_OSDSubdSurfaceGL4.h.

Constructor & Destructor Documentation

GR_OSDSubdSurfaceGL4::GR_OSDSubdSurfaceGL4 ( GR_Primitive prim)
GR_OSDSubdSurfaceGL4::~GR_OSDSubdSurfaceGL4 ( )
override

Member Function Documentation

const char* GR_OSDSubdSurfaceGL4::className ( ) const
inlineoverridevirtual

Implements GR_GeoRender.

Definition at line 28 of file GR_OSDSubdSurfaceGL4.h.

void GR_OSDSubdSurfaceGL4::draw ( RE_Render r,
GR_RenderMode  mode,
GR_RenderFlags  flags,
GR_DrawParms  draw_parms 
)
overridevirtual

Normal drawing method. Only issue rendering commands.

Implements GR_GeoRender.

void GR_OSDSubdSurfaceGL4::update ( RE_Render r,
const GT_PrimitiveHandle primh,
const GR_UpdateParms p,
const char *  cache_name 
)
overridevirtual

Update the geometry of this render object using the GT primitive. No rendering commands should be issued.

Implements GR_GeoRender.


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