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

#include <mesh.h>

+ Inheritance diagram for HdMesh:

Public Member Functions

HD_API ~HdMesh () override
 
bool IsDoubleSided (HdSceneDelegate *delegate) const
 
HdCullStyle GetCullStyle (HdSceneDelegate *delegate) const
 
VtValue GetShadingStyle (HdSceneDelegate *delegate) const
 
HdMeshTopology GetMeshTopology (HdSceneDelegate *delegate) const
 
HdDisplayStyle GetDisplayStyle (HdSceneDelegate *delegate) const
 
PxOsdSubdivTags GetSubdivTags (HdSceneDelegate *delegate) const
 
virtual HdMeshTopologySharedPtr GetTopology () const
 Topology getter. More...
 
VtValue GetPoints (HdSceneDelegate *delegate) const
 
VtValue GetNormals (HdSceneDelegate *delegate) const
 
HD_API TfTokenVector const & GetBuiltinPrimvarNames () const override
 
- Public Member Functions inherited from HdRprim
HD_API HdRprim (SdfPath const &id)
 
virtual HD_API ~HdRprim ()
 
HD_API const
HdRepr::DrawItemUniquePtrVector
GetDrawItems (TfToken const &reprToken) const
 
virtual HD_API void Finalize (HdRenderParam *renderParam)
 
SdfPath const & GetId () const
 
int32_t GetPrimId () const
 Return the unique instance id. More...
 
HD_API void SetPrimId (int32_t primId)
 Set the unique instance id. More...
 
SdfPath const & GetInstancerId () const
 
SdfPath const & GetMaterialId () const
 
HD_API void SetMaterialId (SdfPath const &materialId)
 Sets a new material binding to be used by this rprim. More...
 
HdReprSelector const & GetReprSelector () const
 
TfToken const & GetRenderTag () const
 
TfToken GetRenderTag (HdSceneDelegate *delegate) const
 Returns the render tag associated to this rprim. More...
 
GfRange3d GetExtent (HdSceneDelegate *delegate) const
 Returns the bounds of the rprim in local, untransformed space. More...
 
HdPrimvarDescriptorVector GetPrimvarDescriptors (HdSceneDelegate *delegate, HdInterpolation interpolation) const
 Primvar Query. More...
 
VtValue GetPrimvar (HdSceneDelegate *delegate, const TfToken &name) const
 
VtValue GetIndexedPrimvar (HdSceneDelegate *delegate, const TfToken &name, VtIntArray *indices) const
 
HD_API VtMatrix4dArray GetInstancerTransforms (HdSceneDelegate *delegate)
 
HD_API bool IsDirty (HdChangeTracker &changeTracker) const
 Returns true if any dirty flags are set for this rprim. More...
 
bool IsVisible () const
 Is the prim itself visible. More...
 
HD_API void UpdateReprSelector (HdSceneDelegate *delegate, HdDirtyBits *dirtyBits)
 
virtual HD_API void UpdateRenderTag (HdSceneDelegate *delegate, HdRenderParam *renderParam)
 
virtual HdDirtyBits GetInitialDirtyBitsMask () const =0
 
HD_API bool CanSkipDirtyBitPropagationAndSync (HdDirtyBits bits) const
 
HD_API HdDirtyBits PropagateRprimDirtyBits (HdDirtyBits bits)
 
HD_API void InitRepr (HdSceneDelegate *delegate, TfToken const &reprToken, HdDirtyBits *dirtyBits)
 
virtual void Sync (HdSceneDelegate *delegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits, TfToken const &reprToken)=0
 

Static Public Member Functions

static HD_API void ConfigureRepr (TfToken const &reprName, HdMeshReprDesc desc1, HdMeshReprDesc desc2=HdMeshReprDesc())
 

Protected Types

using _MeshReprConfig = _ReprDescConfigs< HdMeshReprDesc, 2 >
 
- Protected Types inherited from HdRprim
using _ReprVector = std::vector< std::pair< TfToken, HdReprSharedPtr >>
 

Protected Member Functions

HD_API HdMesh (SdfPath const &id)
 
- Protected Member Functions inherited from HdRprim
HD_API HdReprSharedPtr const & _GetRepr (TfToken const &reprToken) const
 
HD_API void _UpdateVisibility (HdSceneDelegate *sceneDelegate, HdDirtyBits *dirtyBits)
 
HD_API void _UpdateInstancer (HdSceneDelegate *sceneDelegate, HdDirtyBits *dirtyBits)
 
virtual HdDirtyBits _PropagateDirtyBits (HdDirtyBits bits) const =0
 
virtual void _InitRepr (TfToken const &reprToken, HdDirtyBits *dirtyBits)=0
 

Static Protected Member Functions

static HD_API
_MeshReprConfig::DescArray 
_GetReprDesc (TfToken const &reprName)
 

Detailed Description

Hydra Schema for a subdivision surface or poly-mesh object.

Definition at line 112 of file mesh.h.

Member Typedef Documentation

Definition at line 160 of file mesh.h.

Constructor & Destructor Documentation

HD_API HdMesh::~HdMesh ( )
override
HD_API HdMesh::HdMesh ( SdfPath const &  id)
protected

Constructor. instancerId, if specified, is the instancer which uses this mesh as a prototype.

Member Function Documentation

static HD_API _MeshReprConfig::DescArray HdMesh::_GetReprDesc ( TfToken const &  reprName)
staticprotected
static HD_API void HdMesh::ConfigureRepr ( TfToken const &  reprName,
HdMeshReprDesc  desc1,
HdMeshReprDesc  desc2 = HdMeshReprDesc() 
)
static

Configure the geometric style of the mesh for a given representation. We currently allow up to 2 descriptors for a representation. Example of when this may be useful: Drawing the outline in addition to the surface for a mesh.

HD_API TfTokenVector const& HdMesh::GetBuiltinPrimvarNames ( ) const
overridevirtual

Returns the names of built-in primvars, i.e. primvars that are part of the core geometric schema for this prim.

Implements HdRprim.

HdCullStyle HdMesh::GetCullStyle ( HdSceneDelegate delegate) const
inline

Definition at line 182 of file mesh.h.

HdDisplayStyle HdMesh::GetDisplayStyle ( HdSceneDelegate delegate) const
inline

Definition at line 200 of file mesh.h.

HdMeshTopology HdMesh::GetMeshTopology ( HdSceneDelegate delegate) const
inline

Topological accessors via the scene delegate

Definition at line 194 of file mesh.h.

VtValue HdMesh::GetNormals ( HdSceneDelegate delegate) const
inline

Definition at line 224 of file mesh.h.

VtValue HdMesh::GetPoints ( HdSceneDelegate delegate) const
inline

Primvars Accessors

Definition at line 218 of file mesh.h.

VtValue HdMesh::GetShadingStyle ( HdSceneDelegate delegate) const
inline

Definition at line 188 of file mesh.h.

PxOsdSubdivTags HdMesh::GetSubdivTags ( HdSceneDelegate delegate) const
inline

Definition at line 206 of file mesh.h.

HdMeshTopologySharedPtr HdMesh::GetTopology ( ) const
inlinevirtual

Topology getter.

Reimplemented in HdStMesh.

Definition at line 212 of file mesh.h.

bool HdMesh::IsDoubleSided ( HdSceneDelegate delegate) const
inline

Render State

Definition at line 176 of file mesh.h.


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