What's New in Director 8.5 > Working with Models and Model Resources > Animation modifiers > Keyframe player properties |  |

Keyframe player properties

Use these properties to work with keyframe animations:

Property | Access | Description | Returns
--- | --- | --- | ---
`whichModel``.keyframePlayer.playing` | Get | `TRUE (1)`= playing; `FALSE (0)`= paused. | `TRUE (1)`
`whichModel``.keyframePlayer.playList` | Get | A linear list of property lists, where each property list yields the parameters for the currently playing and queued animations. For example, `[[#name: "Walk_rt_turn", #loop: 0, #startTime: 0, #endTime: 4000, #scale: 1.0000], [#name: "Walk", #loop: 1, #startTime: 0, #endTime: -1, #scale: 1.0000]]`. | Empty list []
`whichModel``.keyframePlayer.currentTime` | Get and set | Current local time of motion at top of play list, in milliseconds. | `0`
`whichModel``.keyframePlayer.playRate` | Get and set | A value indicating how quickly or slowly to play back the motion. For example, a value of 2.0 doubles the speed of the motion; a value of 0.5 halves the speed of the motion. This value is multiplied by the value of the `playRate` parameter of the `play` or `queue` command. | `1.0`
`whichModel``.keyframePlayer.playList.count` | Get | Current number of motions in the play list. | `0`
`whichModel``.keyframePlayer.rootLock` | Get and set | `TRUE (1)`= root translational component of the model remains at its referenced unanimated position (and therefore cannot disappear offstage). | `FALSE (0)`
`whichModel``.keyframePlayer.currentLoopState` | Get and set | `TRUE (1)`= animation loops; `FALSE (0)`= animation plays through once. | `FALSE (0)`
`whichModel``.keyframePlayer.blendTime` | Get and set | Length in milliseconds of the period when blending takes place between motions. The `blendTime` property is linked to motion duration. Motion blending is disabled if `blendTime = 0` and `autoBlend = TRUE`. | `500`
`whichModel``.keyframePlayer.autoBlend` | Get and set | If `TRUE`, automatic linear blending (from 0.0 to 100.0) is applied over the blend time. Otherwise, `blendTime` is ignored, and the amount of blending is user-determined by the `blendFactor` property. | `TRUE (1)`
`whichModel``.keyframePlayer.blendFactor` | Get and set | The degree of blending between motions, expressed as a floating-point value between `0.0` and `100.0`. A value of `0.0` uses all the previous motion. A value of `100.0` uses all of the next motion. The `blendFactor` can be changed frame by frame to create custom blending effects. | `0`
`whichModel``.keyframePlayer.positionReset` | Get and set | `TRUE (1)` = object returns to starting position at end of animation; `FALSE (0)` = object remains at final animation position, and begins again from there if looping is on. | `TRUE (1)`
`whichModel``.keyframePlayer.rotationReset` | Get and set | Normally a model snaps back to its original rotation after a motion finishes playing. This property maintains any or all of the rotational changes after playing is complete. The values are as follows: `#none` `#x` `#y`

`#z`

`#xy`

`#xz`

`#all`

`#all`

`whichModel``.keyframePlayer.lockTranslation` | Get and set | Defines the axis of translation to ignore when playing back a motion. The values are as follows: `#none` `#x` `#y`

`#z`

`#xy`

`#xz`

`#all`

To keep a model locked to a ground plane with the top pointing along the Z axis, set lockTranslation to `#z`.

`LockTranslation` = `#all` is equivalent to `rootLock` = `TRUE (1)`.

`#none`