ID3DXAnimationController interface

This interface is used to control animation functionality, connecting animation sets with the transformation frames that are being animated. The interface has methods to mix multiple animations and to modify blending parameters over time to enable smooth transitions and other effects.

Members

The ID3DXAnimationController interface inherits from the IUnknown interface. ID3DXAnimationController also has these types of members:

Methods

The ID3DXAnimationController interface has these methods.

Method Description
AdvanceTime Animates the mesh and advances the global animation time by a specified amount.
CloneAnimationController Clones, or copies, an animation controller.
GetAnimationSet Gets an animation set.
GetAnimationSetByName Gets an animation set, given its name.
GetCurrentPriorityBlend Returns an event handle to a priority blend event that is currently running.
GetCurrentTrackEvent Returns an event handle to the event currently running on the specified animation track.
GetEventDesc Gets a description of a specified animation event.
GetMaxNumAnimationOutputs Get the maximum number of animation outputs the animation controller can support.
GetMaxNumAnimationSets Gets the maximum number of animation sets the animation controller can support.
GetMaxNumEvents Gets the maximum number of events the animation controller can support.
GetMaxNumTracks Gets the maximum number of tracks in the animation controller.
GetNumAnimationSets Returns the number of animation sets currently registered in the animation controller.
GetPriorityBlend Gets the current priority blending weight used by the animation controller.
GetTime Gets the global animation time.
GetTrackAnimationSet Gets the animation set for the given track.
GetTrackDesc Gets the track description.
GetUpcomingPriorityBlend Returns an event handle to the next priority blend event scheduled to occur after a specified event.
GetUpcomingTrackEvent Returns an event handle to the next event scheduled to occur after a specified event on an animation track.
KeyPriorityBlend Sets blending event keys for the specified animation track.
KeyTrackEnable Sets an event key that enables or disables an animation track.
KeyTrackPosition Sets an event key that changes the local time of an animation track.
KeyTrackSpeed Sets an event key that changes the rate of play of an animation track.
KeyTrackWeight Sets an event key that changes the weight of an animation track. The weight is used as a multiplier when combining multiple tracks together.
RegisterAnimationOutput Adds an animation output to the animation controller and registers pointers for scale, rotate, and translate (SRT) transformations.
RegisterAnimationSet Adds an animation set to the animation controller.
ResetTime Resets the global animation time to zero. Any pending events will retain their original schedules, but in the new timeframe.
SetPriorityBlend Sets the priority blending weight used by the animation controller.
SetTrackAnimationSet Applies the animation set to the specified track.
SetTrackDesc Sets the track description.
SetTrackEnable Enables or disables a track in the animation controller.
SetTrackPosition Sets the track to the specified local animation time.
SetTrackPriority Sets the priority blending weight for the specified animation track.
SetTrackSpeed Sets the track speed. The track speed is similar to a multiplier that is used to speed up or slow down the playback of the track.
SetTrackWeight Sets the track weight. The weight is used to determine how to blend multiple tracks together.
UnkeyAllPriorityBlends Removes all scheduled priority blend events from the animation controller.
UnkeyAllTrackEvents Removes all events from a specified animation track.
UnkeyEvent Removes a specified event from an animation track, preventing the execution of the event.
UnregisterAnimationSet Removes an animation set from the animation controller.
ValidateEvent Checks whether a specified event handle is valid and the animation event has not yet completed.

 

Remarks

Create an animation controller object with D3DXCreateAnimationController.

The LPD3DXANIMATIONCONTROLLER type is defined as a pointer to the ID3DXAnimationController interface.

typedef interface ID3DXAnimationController ID3DXAnimationController;
typedef interface ID3DXAnimationController *LPD3DXANIMATIONCONTROLLER;

The D3DXEVENTHANDLE type is defined as an event handle to animation controller events.

typedef DWORD D3DXEVENTHANDLE;

The LPD3DXEVENTHANDLE type is defined as a pointer to an event handle to animation controller events.

typedef D3DXEVENTHANDLE *LPD3DXEVENTHANDLE;

Requirements

Requirement Value
Header
D3dx9anim.h
Library
D3dx9.lib

See also

D3DX Interfaces