|
| ~GU_AgentLayer () |
|
bool | construct (const UT_StringArray &shape_names, const UT_Array< exint > &transforms, const UT_Array< GU_AgentShapeDeformerConstPtr > &deformers, const UT_Array< UT_Vector3F > &bounds_scales, UT_StringArray *errors=nullptr) |
|
bool | construct (const UT_StringArray &shape_names, const UT_IntArray &transforms, const UT_Array< GU_AgentShapeDeformerConstPtr > &deformers, const UT_FprealArray *bounds_scales=nullptr, UT_StringArray *errors=nullptr) |
|
bool | construct (const UT_StringArray &shape_names, const UT_IntArray &transforms, const UT_Array< bool > &deforming, const UT_FprealArray *bounds_scales=nullptr, UT_StringArray *errors=nullptr) |
|
bool | copyShapeBindings (const GU_AgentLayer &source) |
| Add the shape bindings from another layer. More...
|
|
int64 | getMemoryUsage (bool inclusive) const |
|
const NameType & | uniqueName () const |
|
bool | isFile () const |
| Return whether the layer was loaded from disk. More...
|
|
void | clearIsFile () |
| Clear the flag marking that the layer references a file on disk. More...
|
|
const GU_AgentRig & | rig () const |
| Return the rig associated with the layer. More...
|
|
GU_ConstDetailHandle | detail () const |
| Return the underlying geometry. More...
|
|
const GU_AgentShapeLib & | shapeLib () const |
| Return the shape library for the layer. More...
|
|
exint | numBoundShapes (exint xform_idx) const |
| Return the number of shapes bound to a specific transform. More...
|
|
bool | save (UT_JSONWriter &w) const |
|
bool | load (UT_JSONParser &p) |
| Load the layer from a JSON file. More...
|
|
void | clear () |
| Clear the layer. More...
|
|
const ShapeBinding & | shape (exint i) const |
| Get binding information for the given shape. More...
|
|
const ShapeBinding & | boundShape (exint transform, exint i) const |
|
const UT_IntArray & | getStatic () const |
|
const UT_IntArray & | getDeforming () const |
|
GU_ConstDetailHandle | shapeGeometry (const ShapeBinding &shape_binding) const |
| Get the geometry for the given shape binding. More...
|
|
GU_ConstDetailHandle | shapeGeometry (exint i) const |
| Get the geometry for the given shape index. More...
|
|
void | updateShapes () |
| Update the shape bindings when the shape library gets modified. More...
|
|
void | enlargeBounds (UT_BoundingBox &box, const GU_Agent &agent, const UT_Array< UT_Matrix4F > &xforms) const |
|
bool | expandVelocityRange (UT_Vector3 &vmin, UT_Vector3 &vmax) const |
| Expand the given velocity range using the v attributes in the shapes. More...
|
|
bool | unpackToDetail (GU_Detail &dest, const GU_PrimPacked *prim, const GU_Agent &agent, const GU_AgentRig &rig, const UT_Array< UT_Matrix4F > &xforms, STY_StylerGroup *prim_styler_group, const STY_Styler *parent_styler, const UT_Matrix4D *transform) const |
|
|
const NameType & | name () const |
|
void | setName (const NameType &name) |
|
|
exint | entries () const |
|
exint | staticEntries () const |
|
exint | deformingEntries () const |
|
|
bool | unpackShapeToDetail (GU_Detail &dest, const ShapeBinding &binding, const GU_Agent &agent, const GU_AgentRig &rig, const UT_Array< UT_Matrix4F > &xforms, bool apply_joint_xform=true) const |
|
bool | unpackShapeToDetail (GU_Detail &dest, exint shape_i, const GU_Agent &agent, const GU_AgentRig &rig, const UT_Array< UT_Matrix4F > &xforms) const |
|
|
const_iterator | begin () const |
|
const_iterator | end () const |
|
SYS_FORCE_INLINE | UT_IntrusiveRefCounter () noexcept |
| Default constructor: Sets counter to 0. More...
|
|
SYS_FORCE_INLINE | UT_IntrusiveRefCounter (const UT_IntrusiveRefCounter &) noexcept |
| Copy constructor: Sets counter to 0. More...
|
|
UT_IntrusiveRefCounter & | operator= (const UT_IntrusiveRefCounter &) noexcept |
| Assignment operator: Does not modify counter. More...
|
|
SYS_FORCE_INLINE uint32 | use_count () const noexcept |
| Return current counter. More...
|
|
|
static GU_AgentLayerPtr | addLayer (const UT_StringHolder &unique_name, const GU_AgentRigConstPtr &rig, const GU_AgentShapeLibConstPtr &shapelib) |
|
static GU_AgentLayerPtr | addLayerFromFile (const UT_StringHolder &filename, const GU_AgentRigConstPtr &rig, const GU_AgentShapeLibConstPtr &shapelib, UT_StringArray &errors) |
|
static GU_AgentLayerPtr | addLayerCopy (const GU_AgentLayer &src, const GU_AgentRigConstPtr &rig, const GU_AgentShapeLibConstPtr &shapelib, bool copy_external_ref) |
|
static void | registerDeformer (const GU_AgentShapeDeformerConstPtr &deformer) |
| Register a new shape deformer. More...
|
|
static
GU_AgentShapeDeformerConstPtr | findDeformer (const UT_StringRef &name) |
| Return the deformer with the given name, or nullptr. More...
|
|
static UT_Array
< GU_AgentShapeDeformerConstPtr > | registeredDeformers () |
| Return a list of the registered deformers. More...
|
|
static void | installDeformers () |
|
static
GU_AgentShapeDeformerConstPtr | getLinearSkinDeformer (GU_AgentLinearSkinDeformer::Method method=GU_AgentLinearSkinDeformer::Method::Linear) |
|
static
GU_AgentShapeDeformerConstPtr | getBlendShapeDeformer () |
| Returns the blendshape deformer (no skinning is performed). More...
|
|
static
GU_AgentShapeDeformerConstPtr | getBlendShapeAndSkinDeformer (GU_AgentLinearSkinDeformer::Method skinning_method=GU_AgentLinearSkinDeformer::Method::Linear) |
|
static
GU_AgentShapeDeformerConstPtr | getDualQuatSkinDeformer () |
| Convenience method to return the dual quaternion skinning deformer. More...
|
|
static
GU_AgentShapeDeformerConstPtr | getDualQuatBlendSkinDeformer () |
|
static bool | load (UT_JSONParser &p, LayerData &data) |
|
bool | load (const LayerData &data, UT_StringArray &errors) |
|
A packed agent
The agent is composed of multiple named layers. Each layer consists of zero or more shapes.
All agents must have a default layer. This is the layer used when a specific layer isn't found. Example layers might be:
- "default": The default layer
- "low": Low resolution representation
- "medium": Medium resolution
- "high": High resolution
- "collision": Used for collision detection
The packed agent conforms to the GU_PackedImpl API, but also provides access to the layers/shapes.
Definition at line 44 of file GU_AgentLayer.h.