IFXAnimationModifierParam

The IFXAnimationModifierParam interface manages the IFXModel-level attibutes for the IFXAnimationModifier. This interface is supported by the CIFXAnimationModifierParam component only.

Methods

Interface Methods

Description

Pause

Stops all mixers

Play

Plays top and any paused mixers

Push

Adds a mixer to the top of the stack

Queue

Adds a mixer to the bottom of the stack

Pop

Removes the top mixer on the stack

UnQueue

Removes the bottom mixer on the stack

GetLocalTime

Gets the indexed mixer's time relative to its original time value

SetLocalTime

Sets the indexed mixer's time relative to its original time value

RootLock

Accesses Root Lock property

TimeScale

Accesses the Time Scale property and adjusts playback speed for all mixers

AutoBlend

Transitions over BlendTime as opposed to manually updated BlendFraction

BlendTime

Indicates the transition time for blending

BlendFraction

Transitions from current blend, from last to next

Playing

Accesses Playing property

Concatenation

Controls concatenation of motion

AxisLock

Controls selective axial lock

AxisOffset

Stores displacement along axis

GetNumberQueued

Gets the number of mixers on the Animation queue

GetNumberHistory

Gets the number of the stored mixers recently removed from the queue

IsSingleTrack

Drives the motion of a singleton-deformable object instead of the superset that animates a skeleton with deformable skin

GetSkeletonMixer

Gets IFXSkeletonMixer indexed relative to head of the queue

UseSkeletonMixer

Gets the indexed IFXSkeletonMixer without reference counting

UseHistoricalMixer

Gets the previously removed indexed IFXSkeletonMixer without reference counting

GetRelativeTransform

Gets a bone's transform relative to its parent

SetRelativeTransform

Sets a bone's transform relative to its parent

GetWorldTransform

Sets a bone's transform in absolute world space

Advance

Advances time in all running mixers

Updated

Indicates first update has occurred

RootTransform

Caches root transform


IFXAnimationModifierParam::Pause()

This method stops all mixers.

Parameters:

None

Return Values


IFXAnimationModifierParam::Play()

This method plays top and any paused mixers.

Parameters:

None

Return Values


IFXAnimationModifierParam::Push(IFXString name,F32 *timeOffset,F32 *timeScale,BOOL *loop,BOOL *sync,BOOL tail=false)

This method adds a mixer to the top of the stack.

Parameters:

name

Name of the parameter

*timeOffset

Applies when the motion starts playing

*timeScale

Changes the speed of the playback

*loop

Repeats the animation outside the original limits

*sync

Adjusts time alignment to match the adjacent synchronized mixers on the basis of percent completed

tail=false

Queues the motion to the bottom of the stack

Return Values


IFXAnimationModifierParam::Queue(IFXString name,F32 *timeOffset,F32 *timeScale,BOOL *loop,BOOL *sync)

This method adds a mixer to the bottom of the stack. (Same as Push() with tail=true)

Parameters:

name

Name of the parameter

*timeOffset

Applies when the motion starts playing

*timeScale

Changes the speed of the playback

*loop

Repeats the animation outside the original limits

*sync

Adjusts time alignment to match the adjacent synchronized mixers on the basis of percent completed

Return Values


IFXAnimationModifierParam::Pop(BOOL tail=false)

This method removes the top mixer on the stack.

tail=false

Queues the motion to the bottom of the stack. The default is to pop from the top of the stack

Return Values


IFXAnimationModifierParam::UnQueue()

This method removes the bottom mixer on the stack. (Same as Pop() with tail=true)

Parameters:

None

Return Values


IFXAnimationModifierParam::GetLocalTime(U32 index,F32 *localtime)

This method gets the indexed mixer's time relative to its original unoffset min/max.

Parameters:

index

Index number of mixer

*localtime

Pointer to the mixer's original time values

Return Values


IFXAnimationModifierParam::SetLocalTime(U32 index,F32 localtime)

This method sets the indexed mixer's time relative to its original unoffset min/max.

Parameters:

index

Index number of mixer

localtime

The mixer's original time values

Return Values


IFXAnimationModifierParam::RootLock()

This method accesses Root Lock property. This stops translation of the root bone.

Parameters:

None

Return Values:

BOOL&


IFXAnimationModifierParam::TimeScale()

This method accesses the Time Scale property and adjusts playback speed for all mixers.

Parameters:

None

Return Values:

F32&


IFXAnimationModifierParam::AutoBlend()

This method transitions over BlendTime as opposed to manually updated BlendFraction.

Parameters:

None

Return Values:

BOOL&


IFXAnimationModifierParam::BlendTime()

This method indicates the transition time for blending.

Parameters:

None

Return Values:

F32&


IFXAnimationModifierParam::BlendFraction()

This method transitions from current blend, from last to next. Blending stops when greater than 1.0.

Parameters:

None

Return Values:

F32&


IFXAnimationModifierParam::Playing()

This method accesses Playing property, which will indicate if mixers can play, parallelling Play and Pause().

Parameters:

None

Return Values:

BOOL&


IFXAnimationModifierParam::Concatenation()

This method controls concatenation of motion by position by using bit toggles in enum IFXAnimationModifierParam::Cat.

Parameters:

None

Return Values:

U32


IFXAnimationModifierParam::AxisOffset()

This method stores displacement along an axis.

Parameters:

None

Return Values:

IFXVector3


IFXAnimationModifierParam::AxisLock()

This method controls selective axial lock and is more flexible than RootLock.

Parameters:

None

Return Values:

U32


IFXAnimationModifierParam::GetNumberQueued()

Gets the number of mixers in the Animation queue.

Parameters:

None

Return Values:

U32


IFXAnimationModifierParam::GetNumberHistory()

This method gets the number of the stored mixers recently removed from the queue.

Parameters:

None

Return Values:

U32


IFXAnimationModifierParam::IsSingleTrack()

This method is set to True when operating as single-track, also known as "KeyFrame mode." When set to True, the motion of a singleton-deformable object is driven instead of the superset that animates a skeleton with deformable skin.

Parameters:

None

Return Values:

BOOL


IFXAnimationModifierParam::GetSkeletonMixer(U32 index)

This method gets IFXSkeletonMixer indexed relative to head of the queue.

Parameters:

index

Index number of mixer

Return Values:

IFXSkeletonMixer *


IFXAnimationModifierParam::UseSkeletonMixer(U32 index)

This method gets the indexed IFXSkeletonMixer without reference counting. Only valid for immediate use.

Parameters:

index

Index number of mixer

Return Values:

IFXSkeletonMixer *


IFXAnimationModifierParam::UseBonesManager()

This method gets IFXBonesManager. Only valid for the life of this param.

Parameters:

None

Return Values:

IFXBonesManagerInterface *


IFXAnimationModifierParam::UseHistoricalMixer(U32 index)

This method gets the previously removed indexed IFXSkeletonMixer without reference counting. Only valid for immediate use.

Parameters:

index

Index number of mixer

Return Values:

IFXSkeletonMixer *


IFXAnimationModifierParam::GetRelativeTransform(U32 boneID, F32 *pMatrix16)

This method gets a bone's transform relative to it's parent. All transform access is copy-based, not direct access.

Parameters:

boneID

Bone ID number

pMatrix16

Pointer to the Matrix number

Return Values


IFXAnimationModifierParam::SetRelativeTransform(U32 boneID, F32 *pMatrix16)

This method sets a bone's transform relative to it's parent. All transform access is copy-based, not direct access.

Parameters:

boneID

Bone ID number

pMatrix16

Pointer to the Matrix number

Return Values


IFXAnimationModifierParam::GetWorldTransform(U32 boneID,F32 *pMatrix16)

This method sets a bone's transform in absolute world space. All transform access is copy-based, not direct access.

Parameters:

boneID

Bone ID number

pMatrix16

Pointer to the Matrix number

Return Values


IFXAnimationModifierParam::Advance()

Internal use: Advances time in all running mixers.

Parameters:

None

Return Values

 


IFXAnimationModifierParam::Updated()

Internal use: Indicates whether first update has occurred (flag set by modifier).

Parameters:

None

Return Values:

BOOL


IFXAnimationModifierParam::RootTransform()

Internal use: Caches root transform.

Parameters:

None

Return Values:

IFXTransform &

 

§See asterisked (*) statement at Legal Information © 2001 Intel Corporation.