11 #ifndef __GT_PackedAlembic__
12 #define __GT_PackedAlembic__
38 { myAlembicOffsets.append(alembic_prim_offset); }
42 bool force_update) = 0;
45 {
return (myConstShapes.entries() +
46 myTransformShapes.entries() +
47 myDeformShapes.entries() +
48 myCombinedShapes.entries()); }
51 {
return myConstShapes; }
53 {
return myTransformShapes; }
55 {
return myDeformShapes; }
57 {
return myCombinedShapes; }
60 int nsegments)
const override;
64 void setRefinedSubset(
bool reduced_consts,
66 bool reduced_transforms,
76 {
return myDetailList->getGeometry(0); }
97 unsigned myHasConstSubset : 1,
112 bool build_packed_attribs);
117 virtual void initVisAnim() = 0;
129 virtual bool isVisible() = 0;
132 {
id = myID;
return true; }
139 { myAnimVis = anim; }
145 virtual void getCachedVisibility(
bool &visible)
const = 0;
154 {
return myDetailAttribs; }
163 unsigned myHasChanged : 1,
181 {
return "GT_PackedAlembicMesh"; }
187 int nsegments)
const override;
191 {
id = myID;
return true; }
193 void update(
bool initial_update);
195 {
return myTransformArray.get() != NULL; }
197 {
return myTransformArray.get() != NULL; }
210 int64 myAlembicVersion;
233 {
return "GT_AlembicInstance"; }
249 unsigned myHasChanged : 1,
UT_IntArray myTransSubset
UT_Array< GT_PrimitiveHandle > myCombinedShapes
UT_Array< GT_PrimitiveHandle > myDeformShapes
const UT_Array< GT_PrimitiveHandle > & transformShapes() const
virtual bool updateGeoPrim(const GU_ConstDetailHandle &dtl, const GT_RefineParms &parms)
update any cached data for geometry and its attributes
const char * className() const override
virtual bool refine(GT_Refine &refiner, const GT_RefineParms *parms=NULL) const
Single Alembic shape (non-instanced)
const char * className() const override
GEO_AnimationType myAnimType
UT_IntrusivePtr< GT_AttributeList > GT_AttributeListHandle
UT_Array< GT_PrimitiveHandle > myConstShapes
GEO_AnimationType animationType() const
bool hasAnimatedVisibility() const
int getMotionSegments() const override
int getMotionSegments() const override
int getNumChildPrims() const
Instanced alembic primitive.
const UT_IntArray & getConstantSubset() const
int getPrimitiveType() const override
bool getUniqueID(int64 &id) const override
GEO_AnimationType animationType() const
int64 alembicVersion() const
const UT_StringHolder & archiveName() const
bool hasConstantSubset() const
bool visibilityAnimated() const
GT_AttributeListHandle myDetailAttribs
GT_PrimitiveHandle doSoftCopy() const override
const GT_AttributeListHandle & getDetailAttributes() const override
GEO_AnimationType myAnimType
int64 alembicVersion() const
const UT_Array< GT_PrimitiveHandle > & combinedShapes() const
int64 getAlembicVersion() const
GLsizei GLsizei GLchar * source
const GU_ConstDetailHandle & parentDetail() const
GA_OffsetArray myAlembicOffsets
const UT_Array< GT_PrimitiveHandle > & constantShapes() const
int getPrimitiveType() const override
The base class for all GT primitive types.
const GA_OffsetArray & getAlembicOffsets() const
GT_GEODetailListHandle myDetailList
virtual int64 getMemoryUsage() const =0
bool hasAnimatedTransforms() const
Processes primitives generated by refinement process.
const UT_StringArray & getAlembicObjects() const
int64 alembicVersion() const
Container for a GU packed primitive.
void setAlembicVersion(int64 v)
int getPrimitiveType() const override
void setPrimIndex(int idx)
void setAnimationType(GEO_AnimationType t)
Alembic mesh which contains multiple alembic primitives merged together.
void appendAlembic(GA_Offset alembic_prim_offset)
UT_IntArray myConstSubset
int getPrimitiveType() const override
void setVisibilityAnimated(bool anim)
void setAlembicVersion(int64 v)
UT_SharedPtr< GT_GEODetailList > GT_GEODetailListHandle
const UT_Array< GT_PrimitiveHandle > & deformShapes() const
UT_StringArray myAlembicObjects
virtual void enlargeBounds(UT_BoundingBox boxes[], int nsegments) const =0
UT_Array< GT_PrimitiveHandle > myTransformShapes
const UT_IntArray & getTransformSubset() const
bool hasTransformSubset() const
void setAlembicVersion(int64 v)
bool getUniqueID(int64 &id) const override