Keyframe¶
A Keyframe holds the Poses applied to joints in a Model at a given point of time in an animation. Keyframes are interpolated between during animation playback.
Description¶
A Keyframe holds the Poses applied to joints in a Model at a given point of time in an animation. Keyframes are interpolated between during animation playback.
Note, in most cases developers do not need to manipulate KeyframeSequences as the animation editor covers most animation functionality. However, in some cases a developer may wish to generate an animation from a Script or build their own plugin.
Structure¶
Keyframes are held within a KeyframeSequence and contain Pose objects. The poses are named in accordance with the BaseParts they correspond to and are structured in terms of joint hierarchy. This means each Pose is parented to the Pose corresponding to the part it is attached to.
Note, as Poses are named in accordance with the BaseParts they correspond to, animations require distinct part names to play correctly.
Interpolation¶
During animation playback the poses in different keyframes are interpolated between. This allows a smooth animation to be created without needing to define every frame. Note, the style of interpolation is determined in the Pose object. The Keyframe object merely holds the Poses at a defined point of time in the animation (Keyframe.Time).
Inheritance¶
Nova inheritance: Instance → Keyframe
Properties¶
Time Supported Property The Keyframe time position (in seconds) in an animation. This determines the time at which the Poses inside the keyframe will be shown.
This property gives the Keyframe time position (in seconds) in an animation. This determines the time at which the Poses inside the keyframe will be shown.
Note the Keyframe with the highest time value in a KeyframeSequence is used to determine the length of the animation.
Methods¶
AddPose Supported Function Adds a Pose to the Keyframe by parenting it to the keyframe.
This function adds a Pose to the Keyframe by parenting it to the keyframe. It is functionally identical to setting the pose's Instance.Parent to the keyframe.
Note, this function will not error when an instance other than a Pose is given as the pose parameter and will parent it successfully.
GetPoses Supported Function Returns an array containing all Poses that have been added to a Keyframe.
RemovePose Supported Function Removes a Pose from the Keyframe by setting its Instance.Parent to nil.
This function removes a Pose from the Keyframe by setting
its Instance.Parent to nil without destroying it. This means the
provided the pose is referenced and it can be re-parented later.
Note, this function will not error when an instance other than a Pose is given as the pose parameter.
Inherited members¶
Inherited from Instance: 8 properties, 36 methods, 7 events. They are documented on the base class page.
3 modern Roblox member(s) are not implemented yet — expand to inspect
Members declared by Roblox's Keyframe class (or by a missing base class) that Nova does not expose. Use this list to scope a migration; the compatibility guide has the recommended workaround.
Methods¶
| Member | Signature | Status | Notes | Flags |
|---|---|---|---|---|
AddMarker |
Keyframe:AddMarker(marker: Instance): null |
Not yet | Adds a KeyframeMarker to the Keyframe by parenting it to the keyframe. | — |
GetMarkers |
Keyframe:GetMarkers(): Instances |
Not yet | Returns an array containing all KeyframeMarkers that have been added to the Keyframe. |
— |
RemoveMarker |
Keyframe:RemoveMarker(marker: Instance): null |
Not yet | Removes a KeyframeMarker from the Keyframe by settings its Instance.Parent to nil. |
— |
Roblox reference: Keyframe
Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.