HDK
|
#include <GU_MotionClip.h>
Public Member Functions | |
GU_MotionClipRW (GU_Detail *gdp, UT_WorkBuffer &err_msg, bool can_evaluate=true, GU_MotionClipInfo *clipinfo=nullptr, bool compute_default_clipinfo=false, bool do_sort_samples=true, bool enable_locking=true) | |
~GU_MotionClipRW () override=default | |
bool | updateGdp (const GU_Detail *gdp) override |
bool | updateGdpNC (GU_Detail *gdp) |
bool | setTopology (fpreal time, const GU_Detail *sample, UT_WorkBuffer &error_msg) |
void | addClipInfo () |
This will add a clipinfo detail attribute based on the primitive times. More... | |
![]() | |
GU_MotionClipRO (const GU_Detail *gdp, UT_WorkBuffer &err_msg, bool can_evaluate=true, GU_MotionClipInfo *clipinfo=nullptr, bool compute_default_clipinfo=false, bool do_sort_samples=true, bool enable_locking=true) | |
clipinfo will override the gdp's clipinfo detail attribute More... | |
virtual | ~GU_MotionClipRO ()=default |
void | getTopology (fpreal &time, GU_Detail *dest, const GA_AttributeFilter *skip=nullptr) |
bool | hasTopology () const |
void | evaluate (fpreal time, GU_Detail *result, const GA_PointGroup *result_pts=nullptr, const GA_PointGroup *topology_pts=nullptr, const GA_AttributeFilter *extra_attribs_to_unpack=nullptr, GU_MotionClipEndBehavior left_end_behavior=GU_MotionClipEndBehavior::Clamp, GU_MotionClipEndBehavior right_end_behavior=GU_MotionClipEndBehavior::Clamp) |
void | evaluate (fpreal time, GU_Detail *result, const EvaluationParms &evaluation_parms, const GA_PointGroup *result_pts=nullptr, const GA_PointGroup *topology_pts=nullptr, UT_ArrayStringMap< bool > *is_anim_point_attrib=nullptr) |
void | evaluateNoLock (fpreal time, GU_Detail *result, const EvaluationParms &evaluation_parms, const GA_PointGroup *result_pts=nullptr, const GA_PointGroup *topology_pts=nullptr, UT_ArrayStringMap< bool > *is_anim_point_attrib=nullptr) |
void | setScaleInheritance (UT_ScaleInheritanceMode scale_inheritance) |
void | computeLocalTransforms (fpreal time, UT_Array< GU_AgentXformD > &result, bool constant_evaluation=false) |
exint | getJointIndex (const UT_StringHolder &joint_name) const |
const GA_PointGroup * | getJointGroup (GOP_Manager &gop, const UT_StringHolder &pattern) const |
void | getJointsInGroup (GOP_Manager &gop, const UT_StringHolder &pattern, UT_StringArray &joints_in_group) const |
bool | isInitialised () const |
exint | numJoints () const |
const GU_MotionClipInfo & | clipInfo () const |
const GU_Detail * | getSample (fpreal time) const |
returns the sample at time, or nullptr if not found More... | |
const GU_Detail * | restFrame () const |
void | getSortedFrameOrder (UT_Array< exint > &frame_order) |
const UT_Array< fpreal > & | getSampleTimes () |
bool | canEvaluate () const |
Friends | |
class | GU_MotionClipBuilder |
Additional Inherited Members | |
![]() | |
void | sortPrimitives (GU_Detail *gdp, bool clear_array) |
![]() | |
const GU_Detail * | ourGdp |
GU_MotionClipDataIds | ourDataIds |
MotionClip object which allows for modifications
You can add/remove frames by passing an instance of this into GU_MotionBuilder
Definition at line 546 of file GU_MotionClip.h.
GU_MotionClipRW::GU_MotionClipRW | ( | GU_Detail * | gdp, |
UT_WorkBuffer & | err_msg, | ||
bool | can_evaluate = true , |
||
GU_MotionClipInfo * | clipinfo = nullptr , |
||
bool | compute_default_clipinfo = false , |
||
bool | do_sort_samples = true , |
||
bool | enable_locking = true |
||
) |
|
overridedefault |
void GU_MotionClipRW::addClipInfo | ( | ) |
This will add a clipinfo detail attribute based on the primitive times.
bool GU_MotionClipRW::setTopology | ( | fpreal | time, |
const GU_Detail * | sample, | ||
UT_WorkBuffer & | error_msg | ||
) |
Sets the topology to the sample geometry, marking the packed primitive with the given time attribute
If there is already an existing topology sample must contain only the same joints.
The topology must be set before attempting to add frames
returns false on error
|
inlineoverridevirtual |
Reimplemented from GU_MotionClipRO.
Definition at line 562 of file GU_MotionClip.h.
|
inline |
Definition at line 563 of file GU_MotionClip.h.
|
friend |
Definition at line 549 of file GU_MotionClip.h.