|Engine Module Type String||Animation|
|Module Type Usage||Multiple Type|
Animation Modules enable the Drag[en]gine to load an animation from a file or to save an animation to a file. Animation modules are Multiple Type Modules hence you can install more than one Animation module at the same time. Launchers typically search missing Animation modules for you so you have only those installed that your games really use.
Animation Resources store animations as a series of moves. Every move corresponds to one animation sequence. For speed and memory reasons a list of all used bones is stored. These bones store the name of the Rig bone they are supposed to influence. Moves can contain informations about all bones or only a group of bones which enables blending animations.
Every move is defined by a name, playtime and a list of bones. The name is unique in the scope of the animation resource and is used to fetch moves from within scripts. The playtime indicates how long in seconds the move plays. Every bone in the list stores the index of the bone to influence and a list of keyframes. The index refers to the bone list in the Animation resource. Each keyframe stores the time in seconds, position, orientation and scaling of the bone. Keyframes have to be sorted in ascending order in respect to their time and do not have to occupy the same time slot. The orientation is stored as an euler axis rotation vector in radians. Every keyframe sets all of the three bone parameters.
Animation modules contain only two functions one for loading animations from a file and the other for saving an animation to a file. There are no additional informations stored otherwise.
See the following classes to get started with Animation modules: