FBX C++ API Reference
All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FbxAnimEvalState Class Reference

#include <fbxanimevalstate.h>

Class Description

This class hold results from animation evaluations.

To clear an evaluation state for re-use, it is possible to invalidate or to reset it. For the same scene with the same objects, invalidating an evaluation state is the quickest way to clear an evaluation state object for re-use because it only zeroes all the entries. A reset will delete all the entries. Unless the scene changes, for performance purposes it is recommended to invalidate evaluation states instead of resetting them.

See also
FbxAnimEvaluator

Definition at line 41 of file fbxanimevalstate.h.

Public Member Functions

FbxTime GetTime () const
 Get the time associated with this evaluation state. More...
 
void Reset ()
 Reset an evaluation state by deleting the cache it contains. More...
 
void Begin (const FbxTime &pTime)
 Start a new evaluation state frame by zeroing the cache it contains, and changing its associated time. More...
 
void Flush (FbxNode *pNode)
 Invalidate a node evaluation state to force update on next evaluation. More...
 
void Flush (FbxProperty &pProperty)
 Invalidate a property evaluation state to force update on next evaluation. More...
 
FbxNodeEvalStateGetNodeEvalState (FbxNode *pNode)
 Get node transform evaluation result from the evaluation state. More...
 
FbxPropertyEvalStateGetPropertyEvalState (FbxProperty &pProperty)
 Get a property evaluation result from the evaluation state. More...
 
FbxAnimCurveNodeGetPropertyCurveNode (FbxProperty &pProperty, FbxAnimLayer *pAnimLayer)
 Get a property curve node from the evaluation state for quick access. More...
 

Member Function Documentation

◆ GetTime()

FbxTime GetTime ( ) const

Get the time associated with this evaluation state.

Returns
The time associated with this evaluation state.

◆ Reset()

void Reset ( )

Reset an evaluation state by deleting the cache it contains.

This will remove all entries in the cache.

◆ Begin()

void Begin ( const FbxTime pTime)

Start a new evaluation state frame by zeroing the cache it contains, and changing its associated time.

All node and property entries will remain in the list, but their evaluation state will not be up-to-date.

Parameters
pTimeThe time at which the evaluation state should be set after the invalidation.

◆ Flush() [1/2]

void Flush ( FbxNode pNode)

Invalidate a node evaluation state to force update on next evaluation.

Parameters
pNodeThe node that needs to be updated on next evaluation.

◆ Flush() [2/2]

void Flush ( FbxProperty pProperty)

Invalidate a property evaluation state to force update on next evaluation.

Parameters
pPropertyThe property that needs to be updated on next evaluation.

◆ GetNodeEvalState()

FbxNodeEvalState* GetNodeEvalState ( FbxNode pNode)

Get node transform evaluation result from the evaluation state.

Parameters
pNodeThe node for which the value was stored.
Returns
The global or local matrix transform for the specified node.

◆ GetPropertyEvalState()

FbxPropertyEvalState* GetPropertyEvalState ( FbxProperty pProperty)

Get a property evaluation result from the evaluation state.

Parameters
pPropertyThe property for which the value was stored.
Returns
The result value that was stored.

◆ GetPropertyCurveNode()

FbxAnimCurveNode* GetPropertyCurveNode ( FbxProperty pProperty,
FbxAnimLayer pAnimLayer 
)

Get a property curve node from the evaluation state for quick access.

Parameters
pPropertyThe property to search for its animation curve node.
pAnimLayerThe animation layer on which the animation curve node must be searched.
Remarks
This function uses a map to store animation curve node search results. If animation curve nodes are replaced, the evaluation state must be reset.

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