#include <RadientSkinning.h>
Public Member Functions | |
| virtual RADIENT_STATUS DILIGENT_CALL_TYPE | SetJointLocalTransforms (Uint32 FirstJoint, Uint32 JointCount, const RadientTransform *pTransforms)=0 |
| virtual RADIENT_STATUS DILIGENT_CALL_TYPE | ResetToRestPose ()=0 |
| virtual RADIENT_STATUS DILIGENT_CALL_TYPE | Commit (Bool UpdateGlobalTransforms)=0 |
| Public Member Functions inherited from Diligent.IObject | |
| virtual void DILIGENT_CALL_TYPE | QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0 |
| Queries the specific interface. | |
| template<typename DerivedType, typename = typename std::enable_if<std::is_base_of<IObject, DerivedType>::value>::type> | |
| void | QueryInterface (const INTERFACE_ID &IID, DerivedType **ppInterface) |
| virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | AddRef ()=0 |
| Increments the number of strong references by 1. | |
| virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | Release ()=0 |
| virtual IReferenceCounters *DILIGENT_CALL_TYPE | GetReferenceCounters () const =0 |
Reusable writer for a complete skeleton pose.
A writer owns a private transform set initialized from the pose when the writer is created. SetJointLocalTransforms() modifies that private set, and Commit() copies the complete set into the pose. Global-transform propagation may be performed immediately or deferred. A pose and all writers created from it are not thread-safe and must not be accessed concurrently.
|
pure virtual |
Applies the writer's complete pose. If UpdateGlobalTransforms is true, the committed local transforms are immediately propagated through the skeleton hierarchy. Otherwise, the application must subsequently call IRadientSkeletonPose::UpdateGlobalTransforms(). Returns RADIENT_STATUS_NO_CHANGE when there are no pending changes. The writer remains reusable.
|
pure virtual |
Replaces the writer's complete private transform set with the skeleton's rest pose. Returns RADIENT_STATUS_NO_CHANGE when it already matches.
|
pure virtual |
Replaces JointCount local transforms beginning at FirstJoint. Input data is copied immediately without validation or normalization. The caller is responsible for providing valid transforms with normalized rotations. Returns RADIENT_STATUS_NO_CHANGE when JointCount is zero.