enum CA_AnimationFlags { CA_MANUAL_UPDATE = 0x000001, CA_LOOP_ANIMATION = 0x000002, CA_REPEAT_LAST_KEY = 0x000004, CA_TRANSITION_TIMEWARPING = 0x000008, CA_START_AT_KEYTIME = 0x000010, CA_START_AFTER = 0x000020, CA_IDLE2MOVE = 0x000040, CA_MOVE2IDLE = 0x000080, CA_ALLOW_ANIM_RESTART = 0x000100, CA_KEYFRAME_SAMPLE_30Hz = 0x000200, CA_DISABLE_MULTILAYER = 0x000400, CA_FORCE_SKELETON_UPDATE = 0x000800, CA_TRACK_VIEW_EXCLUSIVE = 0x001000, CA_REMOVE_FROM_FIFO = 0x002000, CA_FULL_ROOT_PRIORITY = 0x004000, CA_FORCE_TRANSITION_TO_ANIM = 0x008000, CA_FADEOUT = 0x40000000 };
CryCharAnimationParams.h
Members |
Description |
CA_MANUAL_UPDATE = 0x000001 |
With this flag the animation is not being updated automatically. The user needs to set the time manually. This is used for steering-wheels and mounted-weapons, where we convert the rotation of an object into animation-keytimes |
CA_LOOP_ANIMATION = 0x000002 |
Plays an animations in an endless loop till we stop this animation or start a new animation. |
CA_REPEAT_LAST_KEY = 0x000004 |
Plays an animation once and then repeats the last keyframe. Without this flag we remove the animation from the FIFO. |
CA_TRANSITION_TIMEWARPING = 0x000008 |
Linear time-warping of animations to align animation with similar properties |
CA_START_AT_KEYTIME = 0x000010 |
Don't start a transition immediately. Wait till the previous animation is passing a specified key-time |
CA_START_AFTER = 0x000020 |
Can be simulated by using the flags "CA_START_AT_KEYTIME" and "CA_REPEAT_LAST_KEY". |
CA_IDLE2MOVE = 0x000040 |
When playing an Idel2Move transition, we would like to find the best transition point to start a locomotion-animation |
CA_MOVE2IDLE = 0x000080 |
When playing an locomotion-animation, we would like to find the best transition point to start a Move2Idle. |
CA_ALLOW_ANIM_RESTART = 0x000100 |
By default it is not possible to start the same animation twice. In some special cases this is sometimes necessary (e.g. recoil-animations). By enabling this flag we can restart the same animation using the previously described transition-rules. |
CA_KEYFRAME_SAMPLE_30Hz = 0x000200 |
don't interpolate between 2 keyframes (do only 30hz sampling) |
CA_DISABLE_MULTILAYER = 0x000400 |
Don't allow multilayer animations when this flag is set in Layer0 |
CA_FORCE_SKELETON_UPDATE = 0x000800 |
When an object is not visible, then we just update the animation but NOT the skeleton. The skeleton will stay in the last updated pose. This can can be a problem in some situations, for example when an animation is used to open a door, or when we use skeleton animation to move physical objects in the game. A good example is the moving platform in MP to lift up the VTOL and the helicopters). The only way to enforce the skeleton-update is to use this flag per animation. |
CA_TRACK_VIEW_EXCLUSIVE = 0x001000 |
FLAGS FOR SPECIAL ANIMATION MODES |
CA_REMOVE_FROM_FIFO = 0x002000 |
Usually we always update animations, even when the object is not visible. For simple objects (e.g. boids) we want to avoid even animation-update. This can lead to an overflow in the FIFO-queue. To avoid the overflow, we remove the first animation from the FIFO when there are more then 16 animation in the queue. |
CA_FORCE_TRANSITION_TO_ANIM = 0x008000 |
An animation with this flag makes sure it's transitioned to. Usually some conditions (anims in the same queue with flags Idle2Move, Move2Idle, StartKeyAfter, StartKeyAtTime, not in memory) can delay the transition, this flag removes them all |
CA_FADEOUT = 0x40000000 |
fadeout works only for animations in higher layers and should be used together with CA_REPEAT_LAST_KEY |
enum CA_AssetFlags { CA_ASSET_ADDITIVE = 0x001, CA_ASSET_CYCLE = 0x002, CA_ASSET_LOADED = 0x004, CA_ASSET_LMG = 0x008, CA_ASSET_LMG_VALID = 0x020, CA_ASSET_CREATED = 0x800, CA_ASSET_REQUESTED = 0x1000, CA_ASSET_ONDEMAND = 0x2000, CA_AIMPOSE = 0x4000, CA_AIMPOSE_UNLOADED = 0x8000, CA_ASSET_NOT_FOUND = 0x10000, CA_ASSET_TCB = 0x20000, CA_ASSET_INTERNALTYPE = 0x40000, CA_ASSET_BIG_ENDIAN = 0x80000000 };
CryCharAnimationParams.h
Members |
Description |
CA_ASSET_ADDITIVE = 0x001 |
This flags in used in RC as well |
CA_ASSET_CYCLE = 0x002 |
This flags in used in RC as well |
CA_ASSET_LOADED = 0x004 |
If this is true, then the asset has valid info data (has been loaded at least once). |
CA_ASSET_LMG = 0x008 |
If this is true, then the asset is a locomotion group (LMG). |
CA_ASSET_LMG_VALID = 0x020 |
If this is true, then the LMG has been processed at loading time. |
CA_ASSET_CREATED = 0x800 |
If this true, then the asset is created but not loaded. |
CA_ASSET_REQUESTED = 0x1000 |
If this true, then the asset is already requested for loading. |
CA_ASSET_ONDEMAND = 0x2000 |
If this true, then the asset has on-demand loading. |
CA_AIMPOSE = 0x4000 |
If this true, then this asset is an AimPose. |
CA_AIMPOSE_UNLOADED = 0x8000 |
If this true, then we had an AimPose that we removed from memory. |
The flags used in the nFlags member.
enum CA_Dimension_Flags { CA_Dim_Initialized = 0x001, CA_Dim_LockedParameter = 0x002, CA_Dim_DeltaExtraction = 0x004 };
CryCharAnimationParams.h
Members |
Description |
CA_Dim_Initialized = 0x001 |
this is currently limited to only 8 flags |
enum CA_DynAnimationFlags { CA_ACTIVATED = 0x0001, CA_REMOVE_FROM_QUEUE = 0x0002, CA_TW_FLAG = 0x0004, CA_EOC = 0x0008, CA_LOOPED = 0x0010, CA_REPEAT = 0x0020, CA_NEGATIVE_EOC = 0x0040, CA_ANIMEVENTS_EVALUATED_ONCE = 0x0080, CA_LOOPED_THIS_UPDATE = 0x0100 };
CryCharAnimationParams.h
Members |
Description |
CA_TW_FLAG = 0x0004 |
probably not needed |
enum EFacialEffectorFlags { EFE_FLAG_ROOT = 0x00001, EFE_FLAG_UI_EXTENDED = 0x01000, EFE_FLAG_UI_MODIFIED = 0x02000, EFE_FLAG_UI_PREVIEW = 0x04000 };
IFacialAnimation.h
Members |
Description |
EFE_FLAG_ROOT = 0x00001 |
This is a root effector in the library. |
EFE_FLAG_UI_EXTENDED = 0x01000 |
When this flag is set this effector must be extended in ui. |
EFE_FLAG_UI_MODIFIED = 0x02000 |
When this flag is set this effector was modified. |
EFE_FLAG_UI_PREVIEW = 0x04000 |
This flag indicate preview only effector, it is not saved in library. |
enum EFacialEffectorParam { EFE_PARAM_BONE_NAME, EFE_PARAM_BONE_ROT_AXIS, EFE_PARAM_BONE_POS_AXIS };
IFacialAnimation.h
Members |
Description |
EFE_PARAM_BONE_NAME |
String representing the name of the bone/attachment object in character, only for Bone/Attachment Effectors. |
EFE_PARAM_BONE_ROT_AXIS |
Vec3 representing the angles in radians as multipliers of effector weight,for Bone/Attachment Effector rotation. |
EFE_PARAM_BONE_POS_AXIS |
Vec3 representing the offset multiplied with effector weight,for Bone/Attachment Effector offset. |
enum EFacialEffectorType { EFE_TYPE_GROUP = 0x00, EFE_TYPE_EXPRESSION = 0x01, EFE_TYPE_MORPH_TARGET = 0x02, EFE_TYPE_BONE = 0x03, EFE_TYPE_MATERIAL = 0x04, EFE_TYPE_ATTACHMENT = 0x05 };
IFacialAnimation.h
Members |
Description |
EFE_TYPE_GROUP = 0x00 |
This effector is a group of sub effectors. |
EFE_TYPE_EXPRESSION = 0x01 |
This effector contain specific state of effectors. |
EFE_TYPE_MORPH_TARGET = 0x02 |
This Effector is a single morph target. |
EFE_TYPE_BONE = 0x03 |
This Effector controls a bone. |
EFE_TYPE_MATERIAL = 0x04 |
This Effector is a material parameter. |
EFE_TYPE_ATTACHMENT = 0x05 |
This Effector controls attachment. |
Types of face Effectors.
enum EFacialSequenceLayer { eFacialSequenceLayer_Preview, eFacialSequenceLayer_Dialogue, eFacialSequenceLayer_Trackview, eFacialSequenceLayer_AGStateAndAIAlertness, eFacialSequenceLayer_Mannequin, eFacialSequenceLayer_AIExpression, eFacialSequenceLayer_FlowGraph, eFacialSequenceLayer_COUNT };
IFacialAnimation.h
Members |
Description |
eFacialSequenceLayer_Preview |
Used in facial editor. |
eFacialSequenceLayer_Dialogue |
One shot with sound, requested together with wave file. |
eFacialSequenceLayer_Trackview |
Triggered via trackview sequence |
eFacialSequenceLayer_AGStateAndAIAlertness |
Per animation-state and per ai-alertness (looping, requested/cleared by AG state node enter/leave). |
eFacialSequenceLayer_Mannequin |
Sequence requested through mannequin. |
eFacialSequenceLayer_AIExpression |
Looping, requested/cleared by goalpipe/goalop. |
eFacialSequenceLayer_FlowGraph |
Just in case we will need it later =). |
enum EMotionParamID { eMotionParamID_TravelSpeed = 0, eMotionParamID_TurnSpeed, eMotionParamID_TravelAngle, eMotionParamID_TravelSlope, eMotionParamID_TurnAngle, eMotionParamID_TravelDist, eMotionParamID_StopLeg, eMotionParamID_BlendWeight, eMotionParamID_Duration, eMotionParamID_Height, eMotionParamID_Scale, eMotionParamID_TravelDistScale, eMotionParamID_WeightShift, eMotionParamID_Curving, eMotionParamID_COUNT };
CryCharAnimationParams.h
Members |
Description |
eMotionParamID_TravelAngle |
forward, backwards and sidestepping |
eMotionParamID_TurnAngle |
Idle2Move and idle-rotations |
eMotionParamID_TravelDist |
idle-steps |
eMotionParamID_StopLeg |
Move2Idle |
eMotionParamID_BlendWeight |
custom parameter in the range [0...1 |
eMotionParamID_Duration |
Kiev ??? |
eMotionParamID_Height |
Kiev ??? |
eMotionParamID_Scale |
Kiev ??? |
eMotionParamID_TravelDistScale |
Obsolete |
eMotionParamID_WeightShift |
Obsolete |
eMotionParamID_Curving |
Obsolete |
enum MergeCollisionAction { MergeCollisionActionNoOverwrite, MergeCollisionActionOverwrite };
IFacialAnimation.h