Runtime Skins
The Spine Runtimes are available for many programming languages. To simplify documentation, the API reference below is programming language agnostic. There may be minor differences for some languages, such as start caps for spine-csharp and class name prefixes on methods for spine-c.
Parameters cannot be null unless explicitly mentioned. Returns values will not be null unless explicitly mentioned.
This documentation is for the latest beta Spine Runtimes (4.3-beta). Documentation for the latest non-beta Spine Runtimes is also available.
This diagram illustrates how the various pieces of the runtimes fit together. Click for full resolution.
The instance data is created for each skeleton instance and stores the skeleton's pose and other state. The setup pose data is stateless and shared across skeleton instances. It contains the setup pose, attachments, and animations.
Stores a list of timelines to animate a skeleton's pose over time.
Animation properties
bones: int[] readonly
Skeleton.bones indices that this animation's timelines modify.
See BoneTimeline.boneIndex.
duration: float
The duration of the animation in seconds, which is usually the highest time of all frames in the timelines. The duration is used to know when the animation has completed and, for animations that repeat, when it should loop back to the start.
name: string readonly
The animation's name, unique across all animations in the skeleton.
See SkeletonData.findAnimation.
timelines: list<Timeline>
If this list or the timelines it contains are modified, the timelines must be set again to recompute the animation's bone indices and timeline property IDs.
Animation methods
apply (Skeleton skeleton, float lastTime, float time, bool loop, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void
Applies the animation's timelines to the specified skeleton.
See Timeline.apply.
  • skeleton The skeleton the animation is applied to. This provides access to the bones, slots, and other skeleton components the timelines may change.
  • lastTime The last time in seconds this animation was applied. Some timelines trigger only at discrete times, in which case all keys are triggered between lastTime (exclusive) and time (inclusive). Pass -1 the first time an animation is applied to ensure frame 0 is triggered.
  • time The time in seconds the skeleton is being posed for. Timelines find the frame before and after this time and interpolate between the frame values.
  • loop True if time beyond the duration repeats the animation, else the last frame is used.
  • events If any events are fired, they are added to this list. Pass null to ignore fired events or if no timelines fire events.
  • alpha 0 applies setup or current values (depending on fromSetup), 1 uses timeline values, and intermediate values interpolate between them. Adjusting alpha over time can mix an animation in or out.
  • fromSetup If true, alpha transitions between setup and timeline values, setup values are used before the first frame (current values are not used). If false, alpha transitions between current and timeline values, no change is made before the first frame.
  • add If true, for timelines that support it, their values are added to the setup or current values (depending on fromSetup).
  • out True when the animation is mixing out, else it is mixing in. Used by timelines that perform instant transitions.
  • appliedPose True to modify the Posed.appliedPose, else the Posed.pose is modified.
hasTimeline (string[] propertyIds): bool
Returns true if this animation contains a timeline with any of the specified property IDs.
See Timeline.propertyIds.
The base class for all timelines.
Timeline properties
additive: bool readonly
True if this timeline supports additive blending.
duration: float readonly
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly
The number of frames in this timeline.
frameEntries: int readonly
The number of values stored per frame.
frames: float[] readonly
The time in seconds and any other values for each frame.
instant: bool readonly
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
Timeline methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void
Applies this timeline to the skeleton.
  • skeleton The skeleton the timeline is applied to. This provides access to the bones, slots, and other skeleton components the timelines may change.
  • lastTime The last time in seconds this timeline was applied. Some timelines trigger only at discrete times, in which case all keys are triggered between lastTime (exclusive) and time (inclusive). Pass -1 the first time a timeline is applied to ensure frame 0 is triggered.
  • time The time in seconds the skeleton is being posed for. Timelines find the frame before and after this time and interpolate between the frame values.
  • events If any events are fired, they are added to this list. Pass null to ignore fired events or if no timelines fire events.
  • alpha 0 applies setup or current values (depending on fromSetup), 1 uses timeline values, and intermediate values interpolate between them. Adjusting alpha over time can mix a timeline in or out.
  • fromSetup If true, alpha transitions between setup and timeline values, setup values are used before the first frame (current values are not used). If false, alpha transitions between current and timeline values, no change is made before the first frame.
  • add If true, for timelines that support it, their values are added to the setup or current values (depending on fromSetup).
  • out True when the animation is mixing out, else it is mixing in. Used by timelines that perform instant transitions.
  • appliedPose True to modify the Posed.appliedPose, else the Posed.pose is modified.
The base class for timelines that interpolate between frame values using stepped, linear, or a Bezier curve.
CurveTimeline properties
LINEAR = 0: int static, readonly
STEPPED = 1: int static, readonly
BEZIER = 2: int static, readonly
BEZIER_SIZE = 18: int static, readonly
The number of values stored for each 10 segment Bezier curve.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
CurveTimeline methods
getBezierValue (float time, int frameIndex, int valueOffset, int i): float
Returns the Bezier interpolated value for the specified time.
  • frameIndex The index into frames for the values of the frame before time.
  • valueOffset The offset from frameIndex to the value this curve is used for.
  • i The index of the Bezier segments. See getCurveType.
getCurveType (int frame): int
Returns the interpolation type for the specified frame.
  • frame Between 0 and frameCount - 1, inclusive.
  • <return> LINEAR, STEPPED, or BEZIER + the index of the Bezier segments.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
  • bezier The ordinal of this Bezier curve for this timeline, between 0 and bezierCount - 1 (specified in the constructor), inclusive.
  • frame Between 0 and frameCount - 1, inclusive.
  • value The index of the value for the frame this curve is used for.
  • time1 The time for the first key.
  • value1 The value for the first key.
  • cx1 The time for the first Bezier handle.
  • cy1 The value for the first Bezier handle.
  • cx2 The time of the second Bezier handle.
  • cy2 The value for the second Bezier handle.
  • time2 The time for the second key.
  • value2 The value for the second key.
setLinear (int frame): void
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
The base class for a CurveTimeline that sets one property with a curve.
CurveTimeline1 properties
ENTRIES = 2: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
CurveTimeline1 methods
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See Timeline.apply.
  • current The current value for the property.
  • setup The setup value for the property.
  • value The timeline value to apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See Timeline.apply.
  • current The current value for the property.
  • setup The setup value for the property.
getCurveValue (float time): float
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See Timeline.apply.
  • current The current value for the property.
  • setup The setup value for the property.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See Timeline.apply.
  • current The current value for the property.
  • setup The setup value for the property.
setFrame (int frame, float time, float value): void
Sets the time and value for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
An interface for timelines that change a bone's properties.
BoneTimeline properties
boneIndex: int readonly
The index of the bone in Skeleton.bones that is changed by this timeline.
The base class for timelines that change 1 bone property with a curve.
BoneTimeline1 properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
BoneTimeline1 methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
The base class for timelines that change two bone properties with a curve.
BoneTimeline2 properties
ENTRIES = 3: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
BoneTimeline2 methods
setFrame (int frame, float time, float value1, float value2): void
Sets the time and values for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
InheritTimeline properties
ENTRIES = 2: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
InheritTimeline methods
setFrame (int frame, float time, Inherit inherit): void
Sets the inherit transform mode for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
RotateTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
RotateTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ScaleTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ScaleTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value1, float value2): void from BoneTimeline2
Sets the time and values for the specified frame.
See BoneTimeline2.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ScaleXTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ScaleXTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ScaleYTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ScaleYTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ShearTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ShearTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value1, float value2): void from BoneTimeline2
Sets the time and values for the specified frame.
See BoneTimeline2.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ShearXTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ShearXTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ShearYTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ShearYTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
TranslateTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
TranslateTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value1, float value2): void from BoneTimeline2
Sets the time and values for the specified frame.
See BoneTimeline2.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes BoneLocal.x.
TranslateXTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
TranslateXTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes BoneLocal.y.
TranslateYTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
boneIndex: int readonly, from BoneTimeline
The index of the bone in Skeleton.bones that is changed by this timeline.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
TranslateYTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
ConstraintTimeline properties
constraintIndex: int readonly
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
The base class for timelines that change 1 constraint property with a curve.
ConstraintTimeline1 properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
ConstraintTimeline1 methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
IkConstraintTimeline properties
ENTRIES = 6: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
IkConstraintTimeline methods
setFrame (int frame, float time, float mix, float softness, int bendDirection, bool compress, bool stretch): void
Sets the time, mix, softness, bend direction, compress, and stretch for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
  • bendDirection 1 or -1.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PathConstraintMixTimeline properties
ENTRIES = 4: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PathConstraintMixTimeline methods
setFrame (int frame, float time, float mixRotate, float mixX, float mixY): void
Sets the time and color for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PathConstraintPositionTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PathConstraintPositionTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PathConstraintSpacingTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PathConstraintSpacingTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
The base class for most PhysicsConstraint timelines.
PhysicsConstraintTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PhysicsConstraintDampingTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintDampingTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PhysicsConstraintGravityTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintGravityTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PhysicsConstraintInertiaTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintInertiaTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes PhysicsConstraintPose.massInverse. The timeline values are not inverted.
PhysicsConstraintMassTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintMassTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PhysicsConstraintMixTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintMixTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Resets a physics constraint when specific animation times are reached.
PhysicsConstraintResetTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the physics constraint in Skeleton.constraints that will be reset when this timeline is applied, or -1 if all physics constraints in the skeleton will be reset.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintResetTimeline methods
setFrame (int frame, float time): void
Sets the time for the specified frame.
  • frame Between 0 and frameCount, inclusive.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Resets the physics constraint when frames > lastTime and <= time.
See Timeline.apply.
PhysicsConstraintStrengthTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintStrengthTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
PhysicsConstraintWindTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
PhysicsConstraintWindTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
SliderTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
SliderTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
SliderMixTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
SliderMixTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
TransformConstraintTimeline properties
ENTRIES = 7: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
constraintIndex: int readonly, from ConstraintTimeline
The index of the constraint in Skeleton.constraints that will be changed when this timeline is applied, or -1 if a specific constraint will not be changed.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
TransformConstraintTimeline methods
setFrame (int frame, float time, float mixRotate, float mixX, float mixY, float mixScaleX, float mixScaleY, float mixShearY): void
Sets the time, rotate mix, translate mix, scale mix, and shear mix for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
DrawOrderTimeline properties
drawOrders: int[][] readonly
The draw order for each frame. See setFrame.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
DrawOrderTimeline methods
setFrame (int frame, float time, int[] drawOrder nullable): void
Sets the time and draw order for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
  • drawOrder Ordered Skeleton.slots indices, or null to use setup pose order.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
Changes a subset of Skeleton.drawOrder.
DrawOrderFolderTimeline properties
drawOrders: int[][] readonly
The draw order for each frame. See setFrame.
slots: int[] readonly
The Skeleton.slots indices that this timeline affects, in setup order.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
DrawOrderFolderTimeline methods
setFrame (int frame, float time, int[] drawOrder nullable): void
Sets the time and draw order for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
  • drawOrder Ordered slots indices, or null to use setup pose order.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
Fires an Event when specific animation times are reached.
EventTimeline properties
events: Event[] readonly
The event for each frame.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
EventTimeline methods
setFrame (int frame, Event event): void
Sets the time and event for the specified frame.
  • frame Between 0 and frameCount, inclusive.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> firedEvents nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Fires events for frames > lastTime and <= time.
See Timeline.apply.
An interface for timelines that change a slot's properties.
SlotTimeline properties
slotIndex: int readonly
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
Changes alpha for a slot's SlotPose.color.
AlphaTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
AlphaTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup, float value): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than calling getCurveValue.
See CurveTimeline1.getAbsoluteValue.
getAbsoluteValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value, rather than being relative to it.
See CurveTimeline1.getAbsoluteValue.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
getCurveValue (float time): float from CurveTimeline1
Returns the interpolated value for the specified time.
getRelativeValue (float time, float alpha, bool fromSetup, bool add, float current, float setup): float from CurveTimeline1
Returns the interpolated value for properties relative to the setup value. The timeline value is added to the setup value, rather than replacing it.
See CurveTimeline1.getRelativeValue.
getScaleValue (float time, float alpha, bool fromSetup, bool add, bool out, float current, float setup): float from CurveTimeline1
Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
See CurveTimeline1.getScaleValue.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setFrame (int frame, float time, float value): void from CurveTimeline1
Sets the time and value for the specified frame.
See CurveTimeline1.setFrame.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
AttachmentTimeline properties
attachmentNames: string[] readonly
The attachment name for each frame. May contain null values to clear the attachment.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
AttachmentTimeline methods
setFrame (int frame, float time, string attachmentName nullable): void
Sets the time and attachment name for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
Changes SlotPose.deform to deform a VertexAttachment.
DeformTimeline properties
attachment: VertexAttachment readonly
The attachment that will be deformed.
See VertexAttachment.timelineAttachment.
vertices: float[][] readonly
The vertices for each frame.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
DeformTimeline methods
setFrame (int frame, float time, float[] vertices): void
Sets the time and vertices for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
  • vertices Vertex positions for an unweighted VertexAttachment, or deform offsets if it has weights.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
RGBATimeline properties
ENTRIES = 5: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
RGBATimeline methods
setFrame (int frame, float time, float r, float g, float b, float a): void
Sets the time and color for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes SlotPose.color and SlotPose.darkColor for two color tinting.
RGBA2Timeline properties
ENTRIES = 8: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
RGBA2Timeline methods
setFrame (int frame, float time, float r, float g, float b, float a, float r2, float g2, float b2): void
Sets the time, light color, and dark color for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes RGB for a slot's SlotPose.color.
RGBTimeline properties
ENTRIES = 4: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
RGBTimeline methods
setFrame (int frame, float time, float r, float g, float b): void
Sets the time and color for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes RGB for a slot's SlotPose.color and SlotPose.darkColor for two color tinting.
RGB2Timeline properties
ENTRIES = 7: int static, readonly
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
RGB2Timeline methods
setFrame (int frame, float time, float r, float g, float b, float r2, float g2, float b2): void
Sets the time, light color, and dark color for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • time The frame time in seconds.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Changes SlotPose.sequenceIndex for an attachment's Sequence.
SequenceTimeline properties
ENTRIES = 3: int static, readonly
attachment: Attachment readonly
The attachment for which the SlotPose.sequenceIndex will be set.
See VertexAttachment.timelineAttachment.
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
SequenceTimeline methods
setFrame (int frame, float time, SequenceMode mode, int index, float delay): void
Sets the time, mode, index, and frame time for the specified frame.
  • frame Between 0 and frameCount, inclusive.
  • delay Seconds between frames.
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
The base class for timelines that change any number of slot properties with a curve.
SlotCurveTimeline properties
Inherited properties
additive: bool readonly, from Timeline
True if this timeline supports additive blending.
duration: float readonly, from Timeline
The duration of the timeline in seconds, which is usually the highest time of all frames in the timeline.
frameCount: int readonly, from Timeline
The number of frames in this timeline.
frameEntries: int readonly, from Timeline
The number of values stored per frame.
frames: float[] readonly, from Timeline
The time in seconds and any other values for each frame.
instant: bool readonly, from Timeline
True if this timeline sets values instantaneously and does not support interpolation between frames.
propertyIds: string[] readonly, from Timeline
Uniquely encodes both the type of this timeline and the skeleton properties that it affects.
slotIndex: int readonly, from SlotTimeline
The index of the slot in Skeleton.slots that will be changed when this timeline is applied.
SlotCurveTimeline methods
Inherited methods
apply (Skeleton skeleton, float lastTime, float time, list<Event> events nullable, float alpha, bool fromSetup, bool add, bool out, bool appliedPose): void from Timeline
Applies this timeline to the skeleton.
See Timeline.apply.
getBezierValue (float time, int frameIndex, int valueOffset, int i): float from CurveTimeline
Returns the Bezier interpolated value for the specified time.
See CurveTimeline.getBezierValue.
getCurveType (int frame): int from CurveTimeline
Returns the interpolation type for the specified frame.
See CurveTimeline.getCurveType.
setBezier (int bezier, int frame, int value, float time1, float value1, float cx1, float cy1, float cx2, float cy2, float time2, float value2): void from CurveTimeline
Stores the segments for the specified Bezier curve. For timelines that modify multiple values, there may be more than one curve per frame.
See CurveTimeline.setBezier.
setLinear (int frame): void from CurveTimeline
Sets the specified frame to linear interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
setStepped (int frame): void from CurveTimeline
Sets the specified frame to stepped interpolation.
  • frame Between 0 and frameCount - 1, inclusive.
shrink (int bezierCount): void from CurveTimeline
Shrinks the storage for Bezier curves, for use when bezierCount (specified in the constructor) was larger than the actual number of Bezier curves.
Applies animations over time, queues animations for later playback, mixes (crossfading) between animations, and applies multiple animations on top of each other (layering).
See Applying Animations in the Spine Runtimes Guide.
AnimationState properties
data: AnimationStateData
The AnimationStateData to look up mix durations.
timeScale: float
Multiplier for the delta time when the animation state is updated, causing time for all animations and mixes to play slower or faster. Defaults to 1.
See TrackEntry.timeScale to affect a single animation.
tracks: list<TrackEntry> readonly
The list of tracks that have had animations. May contain null entries for tracks that currently have no animation.
AnimationState methods
addAnimation (int trackIndex, string animationName, bool loop, float delay): TrackEntry
Queues an animation by name.
See addAnimation.
addAnimation (int trackIndex, Animation animation, bool loop, float delay): TrackEntry
Adds an animation to be played after the current or last queued animation for a track. If the track has no entries, this is equivalent to calling setAnimation.
  • delay If > 0, sets TrackEntry.delay. If <= 0, the delay set is the duration of the previous track entry minus any mix duration (from data) plus the specified delay (ie the mix ends at (when delay = 0) or before (when delay < 0) the previous track entry duration). If the previous entry is looping, its next loop completion is used instead of its duration.
  • <return> A track entry to allow further customization of animation playback. References to the track entry must not be kept after the AnimationStateListener.dispose event occurs.
addEmptyAnimation (int trackIndex, float mixDuration, float delay): TrackEntry
Adds an empty animation to be played after the current or last queued animation for a track, and sets the track entry's TrackEntry.mixDuration. If the track has no entries, it is equivalent to calling setEmptyAnimation.
See setEmptyAnimation and Empty animations in the Spine Runtimes Guide.
  • delay If > 0, sets TrackEntry.delay. If <= 0, the delay set is the duration of the previous track entry minus any mix duration plus the specified delay (ie the mix ends at (when delay = 0) or before (when delay < 0) the previous track entry duration). If the previous entry is looping, its next loop completion is used instead of its duration.
  • <return> A track entry to allow further customization of animation playback. References to the track entry must not be kept after the AnimationStateListener.dispose event occurs.
addListener (AnimationStateListener listener): void
Adds a listener to receive events for all track entries.
apply (Skeleton skeleton): bool
Poses the skeleton using the track entry animations. The animation state is not changed, so can be applied to multiple skeletons to pose them identically.
  • <return> True if any animations were applied.
clearListenerNotifications (): void
Discards all listener notifications that have not yet been delivered. This can be useful to call from an AnimationStateListener when it is known that further notifications that may have been already queued for delivery are not wanted because new animations are being set.
clearListeners (): void
Removes all listeners added with addListener.
clearNext (TrackEntry entry): void
Removes the TrackEntry.next and all entries after it for the specified entry.
clearTrack (int trackIndex): void
Removes all animations from the track, leaving skeletons in their current pose.
Usually you want to use setEmptyAnimation to mix the skeletons back to the setup pose, rather than leaving them in their current pose.
clearTracks (): void
Removes all animations from all tracks, leaving skeletons in their current pose.
Usually you want to use setEmptyAnimations to mix the skeletons back to the setup pose, rather than leaving them in their current pose.
getCurrent (int trackIndex): TrackEntry nullable
Returns the track entry for the animation currently playing on the track, or null if no animation is currently playing.
removeListener (AnimationStateListener listener): void
Removes the listener added with addListener.
setAnimation (int trackIndex, string animationName, bool loop): TrackEntry
Sets an animation by name.
See setAnimation.
setAnimation (int trackIndex, Animation animation, bool loop): TrackEntry
Sets the current animation for a track, discarding any queued animations.
If the formerly current track entry is for the same animation and was never applied to a skeleton, it is replaced (not mixed from).
  • loop If true, the animation will repeat. If false it will not, instead its last frame is applied if played beyond its duration. In either case TrackEntry.trackEnd determines when the track is cleared.
  • <return> A track entry to allow further customization of animation playback. References to the track entry must not be kept after the AnimationStateListener.dispose event occurs.
setEmptyAnimation (int trackIndex, float mixDuration): TrackEntry
Sets an empty animation for a track, discarding any queued animations, and sets the track entry's TrackEntry.mixDuration. An empty animation has no timelines and serves as a placeholder for mixing in or out.
Mixing out is done by setting an empty animation with a mix duration using either setEmptyAnimation, setEmptyAnimations, or addEmptyAnimation. Mixing to an empty animation causes the previous animation to be applied less and less over the mix duration. Properties keyed in the previous animation transition to the value from lower tracks or to the setup pose value if no lower tracks key the property. A mix duration of 0 still needs to be applied one more time to mix out, so the the properties it was animating are reverted.
Mixing in is done by first setting an empty animation, then adding an animation using addAnimation with the desired delay (an empty animation has a duration of 0) and on the returned track entry, set the TrackEntry.setMixDuration. Mixing from an empty animation causes the new animation to be applied more and more over the mix duration. Properties keyed in the new animation transition from the value from lower tracks or from the setup pose value if no lower tracks key the property to the value keyed in the new animation.
See Empty animations in the Spine Runtimes Guide.
setEmptyAnimations (float mixDuration): void
Sets an empty animation for every track, discarding any queued animations, and mixes to it over the specified mix duration.
See Empty animations in the Spine Runtimes Guide.
update (float delta): void
Increments each track entry TrackEntry.trackTime, setting queued animations as current if needed.
Stores mix (crossfade) durations to be applied when AnimationState animations are changed on the same track.
AnimationStateData properties
defaultMix: float
The mix duration to use when no mix duration has been defined between two animations.
skeletonData: SkeletonData readonly
The SkeletonData to look up animations when they are specified by name.
AnimationStateData methods
getMix (Animation from, Animation to): float
Returns the mix duration to use when changing from the specified animation to the other on the same track, or the defaultMix if no mix duration has been set.
setMix (Animation from, Animation to, float duration): void
Sets the mix duration when changing from the specified animation to the other.
See TrackEntry.mixDuration.
setMix (string fromName, string toName, float duration): void
Sets a mix duration by animation name.
See setMix.
The interface to implement for receiving TrackEntry events. It is always safe to call AnimationState methods when receiving events.
TrackEntry events are collected during AnimationState.update and AnimationState.apply and fired only after those methods are finished.
See TrackEntry.listener and AnimationState.addListener.
AnimationStateListener methods
complete (TrackEntry entry): void
Invoked every time this entry's animation completes a loop. This may occur during mixing (after interrupt).
If this entry's TrackEntry.mixingTo is not null, this entry is mixing out (it is not the current entry).
Because this event is triggered at the end of AnimationState.apply, any animations set in response to the event won't be applied until the next time the AnimationState is applied.
dispose (TrackEntry entry): void
Invoked when this entry will be disposed. This may occur without the entry ever being set as the current entry.
References to the entry should not be kept after dispose is called, as it may be destroyed or reused.
end (TrackEntry entry): void
Invoked when this entry will never be applied again. This only occurs if this entry has previously been set as the current entry (start was invoked).
event (TrackEntry entry, Event event): void
Invoked when this entry's animation triggers an event. This may occur during mixing (after interrupt), see TrackEntry.eventThreshold.
Because this event is triggered at the end of AnimationState.apply, any animations set in response to the event won't be applied until the next time the AnimationState is applied.
interrupt (TrackEntry entry): void
Invoked when another entry has replaced this entry as the current entry. This entry may continue being applied for mixing.
start (TrackEntry entry): void
Invoked when this entry has been set as the current entry. end will occur when this entry will no longer be applied.
When this event is triggered by calling AnimationState.setAnimation, take care not to call AnimationState.update until after the TrackEntry has been configured.
Stores settings and other state for the playback of an animation on an AnimationState track.
References to a track entry must not be kept after the AnimationStateListener.dispose event occurs.
TrackEntry properties
additive: bool
When true, timelines in this animation that support additive have their values added to the setup or current pose values instead of replacing them. Additive can be set for a new track entry only before AnimationState.apply is next called.
alpha: float
Values < 1 mix this animation with the skeleton's current pose (either the setup pose or the pose from lower tracks). Defaults to 1, which overwrites the skeleton's current pose with this animation.
Alpha should be 1 on track 0.
See alphaAttachmentThreshold.
alphaAttachmentThreshold: float
When the computed alpha is greater than alphaAttachmentThreshold, attachment timelines are applied. The computed alpha includes alpha and the mix percentage. Defaults to 0, so attachment timelines are always applied.
animation: Animation
The animation to apply for this track entry.
animationEnd: float
Seconds for the last frame of this animation. Non-looping animations won't play past this time. Looping animations will loop back to animationStart at this time. Defaults to the animation Animation.duration.
animationLast: float
The time in seconds this animation was last applied. Some timelines use this for one-time triggers. Eg, when this animation is applied, event timelines will fire all events between the animationLast time (exclusive) and animationTime (inclusive). Defaults to -1 to ensure triggers on frame 0 happen the first time this animation is applied.
animationStart: float
Seconds when this animation starts, both initially and after looping. Defaults to 0.
When changing the animationStart time, it often makes sense to set animationLast to the same value to prevent timeline keys before the start time from triggering.
animationTime: float readonly
Uses trackTime to compute the animationTime. When the trackTime is 0, the animationTime is equal to the animationStart time.
The animationTime is between animationStart and animationEnd, except if this track entry is non-looping and animationEnd is >= to the Animation.duration, then animationTime continues to increase past animationEnd.
delay: float
Seconds to postpone playing the animation. Must be >= 0. When this track entry is the current track entry, delay postpones incrementing the trackTime. When this track entry is queued, delay is the time from the start of the previous animation to when this track entry will become the current track entry (ie when the previous track entry trackTime >= this track entry's delay).
timeScale affects the delay.
When passing delay <= 0 to AnimationState.addAnimation this delay is set using a mix duration from AnimationStateData. To change the mixDuration afterward, use setMixDuration so this delay is adjusted.
eventThreshold: float
When the mix percentage (mixTime / mixDuration) is less than the eventThreshold, event timelines are applied while this animation is being mixed out. Defaults to 0, so event timelines are not applied while this animation is being mixed out.
holdPrevious: bool
If true, when mixing from the previous animation to this animation, the previous animation is applied as normal instead of being mixed out.
When mixing between animations that key the same property, if a lower track also keys that property then the value will briefly dip toward the lower track value during the mix. This happens because the first animation mixes from 100% to 0% while the second animation mixes from 0% to 100%. Setting holdPrevious to true applies the first animation at 100% during the mix so the lower track value is overwritten. Such dipping does not occur on the lowest track which keys the property, only when a higher track also keys the property.
Snapping will occur if holdPrevious is true and this animation does not key all the same properties as the previous animation.
listener: AnimationStateListener nullable
The listener for events generated by this track entry, or null.
A track entry returned from AnimationState.setAnimation is already the current animation for the track, so the callback for AnimationStateListener.start will not be called.
loop: bool
If true, the animation will repeat. If false it will not, instead its last frame is applied if played beyond its duration.
mixAttachmentThreshold: float
When the mix percentage (mixTime / mixDuration) is less than the mixAttachmentThreshold, attachment timelines are applied while this animation is being mixed out. Defaults to 0, so attachment timelines are not applied while this animation is being mixed out.
mixDrawOrderThreshold: float
When the mix percentage (mixTime / mixDuration) is less than the mixDrawOrderThreshold, draw order timelines are applied while this animation is being mixed out. Defaults to 0, so draw order timelines are not applied while this animation is being mixed out.
mixDuration: float
Seconds for mixing from the previous animation to this animation. Defaults to the value provided by AnimationStateData.getMix based on the animation before this animation (if any).
A mix duration of 0 still needs to be applied one more time to mix out, so the the properties it was animating are reverted. A mix duration of 0 can be set at any time to end the mix on the next AnimationState.update.
The mixDuration can be set manually rather than use the value from AnimationStateData.getMix. In that case, the mixDuration can be set for a new track entry only before AnimationState.update is next called.
When using AnimationState.addAnimation with a delay <= 0, the delay is set using the mix duration from AnimationState.data. If mixDuration is set afterward, the delay needs to be adjusted:
 entry.mixDuration = 0.25;
entry.delay = entry.previous.getTrackComplete() - entry.mixDuration + 0;
Alternatively, use setMixDuration to set both the mix duration and recompute the delay:
 entry.setMixDuration(0.25f, 0); // mixDuration, delay 
mixTime: float
Seconds elapsed from 0 to the mixDuration when mixing from the previous animation to this animation. May be slightly more than mixDuration when the mix is complete.
mixingFrom: TrackEntry nullable, readonly
The track entry for the previous animation when mixing to this animation, or null if no mixing is currently occurring. When mixing from multiple animations, mixingFrom makes up a doubly linked list.
mixingTo: TrackEntry nullable, readonly
The track entry for the next animation when mixing from this animation, or null if no mixing is currently occurring. When mixing to multiple animations, mixingTo makes up a doubly linked list.
next: TrackEntry nullable, readonly
The animation queued to start after this animation, or null if there is none. next makes up a doubly linked list.
See AnimationState.clearNext to truncate the list.
previous: TrackEntry nullable, readonly
The animation queued to play before this animation, or null. previous makes up a doubly linked list.
reverse: bool
If true, the animation will be applied in reverse and events will not be fired.
shortestRotation: bool
If true, mixing rotation between tracks always uses the shortest rotation direction. If the rotation is animated, the shortest rotation direction may change during the mix.
If false, the shortest rotation direction is remembered when the mix starts and the same direction is used for the rest of the mix. Defaults to false.
See resetRotationDirections.
timeScale: float
Multiplier for the delta time when this track entry is updated, causing time for this animation to pass slower or faster. Defaults to 1.
Values < 0 are not supported. To play an animation in reverse, use reverse.
mixTime is not affected by track entry time scale, so mixDuration may need to be adjusted to match the animation speed.
When using AnimationState.addAnimation with a delay <= 0, the delay is set using the mix duration from AnimationState.data, assuming time scale to be 1. If the time scale is not 1, the delay may need to be adjusted.
See AnimationState.timeScale to affect all animations.
trackComplete: float readonly
If this track entry is non-looping, this is the track time in seconds when animationEnd is reached, or the current trackTime if it has already been reached.
If this track entry is looping, this is the track time when this animation will reach its next animationEnd (the next loop completion).
trackEnd: float
The track time in seconds when this animation will be removed from the track. Defaults to the highest possible float value, meaning the animation will be applied until a new animation is set or the track is cleared. If the track end time is reached, no other animations are queued for playback, and mixing from any previous animations is complete, then the properties keyed by the animation are set to the setup pose and the track is cleared.
Usually you want to use AnimationState.addEmptyAnimation rather than have the animation abruptly cease being applied.
trackIndex: int readonly
The index of the track where this track entry is either current or queued.
See AnimationState.getCurrent.
trackTime: float
Current time in seconds this track entry has been the current track entry. The track time determines animationTime. The track time can be set to start the animation at a time other than 0, without affecting looping.
TrackEntry methods
isComplete (): bool
Returns true if at least one loop has been completed.
See AnimationStateListener.complete.
isEmptyAnimation (): bool
Returns true if this entry is for the empty animation. See AnimationState.setEmptyAnimation, AnimationState.addEmptyAnimation, and AnimationState.setEmptyAnimations.
isNextReady (): bool
Returns true if there is a next track entry and it will become the current track entry during the next AnimationState.update.
resetRotationDirections (): void
When shortestRotation is false, this clears the directions for mixing this entry's rotation. This can be useful to avoid bones rotating the long way around when using alpha and starting animations on other tracks.
Mixing involves finding a rotation between two others. There are two possible solutions: the short or the long way around. When the two rotations change over time, which direction is the short or long way can also change. If the short way was always chosen, bones flip to the other side when that direction became the long way. TrackEntry chooses the short way the first time it is applied and remembers that direction. Resetting that direction makes it choose a new short way on the next apply.
setMixDuration (float mixDuration, float delay): void
Sets both mixDuration and delay.
  • delay If > 0, sets delay. If <= 0, the delay set is the duration of the previous track entry minus the specified mix duration plus the specified delay (ie the mix ends at (when delay = 0) or before (when delay < 0) the previous track entry duration). If the previous entry is looping, its next loop completion is used instead of its duration.
wasApplied (): bool
Returns true if this track entry has been applied at least once.
See AnimationState.apply.
The base class for all attachments.
Attachment properties
name: string readonly
The attachment's name.
timelineAttachment: Attachment nullable
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
Attachment methods
copy (): Attachment
Returns a copy of the attachment.
An attachment with vertices that make up a polygon. Can be used for hit detection, creating physics bodies, spawning particle effects, and more.
See SkeletonBounds and Bounding Boxes in the Spine User Guide.
BoundingBoxAttachment properties
color: Color
The color of the bounding box as it was in Spine, or a default color if nonessential data was not exported. Bounding boxes are not usually rendered at runtime.
Inherited properties
bones: int[] nullable, from VertexAttachment
The bones that affect the vertices. The entries are, for each vertex, the number of bones affecting the vertex followed by that many bone indices, which is the Skeleton.bones index. Null if this attachment has no weights.
id: int readonly, from VertexAttachment
Returns a unique ID for this attachment.
name: string readonly, from Attachment
The attachment's name.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
vertices: float[] from VertexAttachment
The vertex positions in the bone's coordinate system. For a non-weighted attachment, the values are x,y pairs for each vertex. For a weighted attachment, the values are x,y,weight triplets for each bone affecting each vertex.
worldVerticesLength: int from VertexAttachment
The maximum number of world vertex values that can be output by computeWorldVertices using the count parameter.
BoundingBoxAttachment methods
Inherited methods
computeWorldVertices (Skeleton skeleton, Slot slot, int start, int count, float[] worldVertices, int offset, int stride): void from VertexAttachment
Transforms the attachment's local vertices to world coordinates. If the SlotPose.deform is not empty, it is used to deform the vertices.
See VertexAttachment.computeWorldVertices.
copy (): BoundingBoxAttachment from Attachment
Returns a copy of the attachment.
An attachment with vertices that make up a polygon used for clipping the rendering of other attachments.
ClippingAttachment properties
color: Color
The color of the clipping attachment as it was in Spine, or a default color if nonessential data was not exported. Clipping attachments are not usually rendered at runtime.
endSlot: SlotData nullable
Clipping is performed between the clipping attachment's slot and the end slot. If null, clipping is done until the end of the skeleton's rendering.
Inherited properties
bones: int[] nullable, from VertexAttachment
The bones that affect the vertices. The entries are, for each vertex, the number of bones affecting the vertex followed by that many bone indices, which is the Skeleton.bones index. Null if this attachment has no weights.
id: int readonly, from VertexAttachment
Returns a unique ID for this attachment.
name: string readonly, from Attachment
The attachment's name.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
vertices: float[] from VertexAttachment
The vertex positions in the bone's coordinate system. For a non-weighted attachment, the values are x,y pairs for each vertex. For a weighted attachment, the values are x,y,weight triplets for each bone affecting each vertex.
worldVerticesLength: int from VertexAttachment
The maximum number of world vertex values that can be output by computeWorldVertices using the count parameter.
ClippingAttachment methods
Inherited methods
computeWorldVertices (Skeleton skeleton, Slot slot, int start, int count, float[] worldVertices, int offset, int stride): void from VertexAttachment
Transforms the attachment's local vertices to world coordinates. If the SlotPose.deform is not empty, it is used to deform the vertices.
See VertexAttachment.computeWorldVertices.
copy (): ClippingAttachment from Attachment
Returns a copy of the attachment.
Interface for an attachment that gets 1 or more texture regions from a Sequence.
HasSequence properties
color: Color
The color the attachment is tinted, to be combined with SlotPose.color.
path: string
The base path for the attachment's texture region.
sequence: Sequence readonly
The sequence that provides texture regions, UVs, and vertex offsets for rendering this attachment.
HasSequence methods
updateSequence (): void
Calls Sequence.update on this attachment's sequence.
An attachment that displays a textured mesh. A mesh has hull vertices and internal vertices within the hull. Holes are not supported. Each vertex has UVs (texture coordinates) and triangles that are used to map an image on to the mesh.
See Mesh attachments in the Spine User Guide.
MeshAttachment properties
edges: int[] nullable
Vertex index pairs describing edges for controlling triangulation, or null if nonessential data was not exported. Mesh triangles do not cross edges. Triangulation is not performed at runtime.
height: float
The height of the mesh's image, or zero if nonessential data was not exported.
hullLength: int
The number of entries at the beginning of vertices that make up the mesh hull.
parentMesh: MeshAttachment nullable
The parent mesh if this is a linked mesh, else null. A linked mesh shares the bones, vertices, regionUVs, triangles, hullLength, edges, width, and height with the parent mesh, but may have a different name or path, and therefore a different texture region.
regionUVs: float[]
The UV pair for each vertex, normalized within the texture region.
triangles: int[]
Triplets of vertex indices which describe the mesh's triangulation.
width: float
The width of the mesh's image, or zero if nonessential data was not exported.
Inherited properties
bones: int[] nullable, from VertexAttachment
The bones that affect the vertices. The entries are, for each vertex, the number of bones affecting the vertex followed by that many bone indices, which is the Skeleton.bones index. Null if this attachment has no weights.
color: Color from HasSequence
The color the attachment is tinted, to be combined with SlotPose.color.
id: int readonly, from VertexAttachment
Returns a unique ID for this attachment.
name: string readonly, from Attachment
The attachment's name.
path: string from HasSequence
The base path for the attachment's texture region.
sequence: Sequence readonly, from HasSequence
The sequence that provides texture regions, UVs, and vertex offsets for rendering this attachment.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
vertices: float[] from VertexAttachment
The vertex positions in the bone's coordinate system. For a non-weighted attachment, the values are x,y pairs for each vertex. For a weighted attachment, the values are x,y,weight triplets for each bone affecting each vertex.
worldVerticesLength: int from VertexAttachment
The maximum number of world vertex values that can be output by computeWorldVertices using the count parameter.
MeshAttachment methods
newLinkedMesh (): MeshAttachment
Returns a new mesh with the parentMesh set to this mesh's parent mesh, if any, else to this mesh.
Inherited methods
computeWorldVertices (Skeleton skeleton, Slot slot, int start, int count, float[] worldVertices, int offset, int stride): void from VertexAttachment
Transforms the attachment's local vertices to world coordinates. If the SlotPose.deform is not empty, it is used to deform the vertices.
See VertexAttachment.computeWorldVertices.
copy (): MeshAttachment from Attachment
Returns a copy of the attachment.
updateSequence (): void from HasSequence
Calls Sequence.update on this attachment's sequence.
An attachment whose vertices make up a composite Bezier curve.
See PathConstraint and Paths in the Spine User Guide.
PathAttachment properties
closed: bool
If true, the start and end knots are connected.
color: Color
The color of the path as it was in Spine, or a default color if nonessential data was not exported. Paths are not usually rendered at runtime.
constantSpeed: bool
If true, additional calculations are performed to make computing positions along the path more accurate so movement along the path has a constant speed.
lengths: float[]
The lengths along the path in the setup pose from the start of the path to the end of each Bezier curve.
Inherited properties
bones: int[] nullable, from VertexAttachment
The bones that affect the vertices. The entries are, for each vertex, the number of bones affecting the vertex followed by that many bone indices, which is the Skeleton.bones index. Null if this attachment has no weights.
id: int readonly, from VertexAttachment
Returns a unique ID for this attachment.
name: string readonly, from Attachment
The attachment's name.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
vertices: float[] from VertexAttachment
The vertex positions in the bone's coordinate system. For a non-weighted attachment, the values are x,y pairs for each vertex. For a weighted attachment, the values are x,y,weight triplets for each bone affecting each vertex.
worldVerticesLength: int from VertexAttachment
The maximum number of world vertex values that can be output by computeWorldVertices using the count parameter.
PathAttachment methods
Inherited methods
computeWorldVertices (Skeleton skeleton, Slot slot, int start, int count, float[] worldVertices, int offset, int stride): void from VertexAttachment
Transforms the attachment's local vertices to world coordinates. If the SlotPose.deform is not empty, it is used to deform the vertices.
See VertexAttachment.computeWorldVertices.
copy (): PathAttachment from Attachment
Returns a copy of the attachment.
An attachment which is a single point and a rotation. This can be used to spawn projectiles, particles, etc. A bone can be used in similar ways, but a PointAttachment is slightly less expensive to compute and can be hidden, shown, and placed in a skin.
See Point Attachments in the Spine User Guide.
PointAttachment properties
color: Color
The color of the point attachment as it was in Spine, or a default clor if nonessential data was not exported. Point attachments are not usually rendered at runtime.
rotation: float
The local rotation in degrees, counter clockwise.
x: float
The local X position.
y: float
The local Y position.
Inherited properties
name: string readonly, from Attachment
The attachment's name.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
PointAttachment methods
computeWorldPosition (BonePose bone, 2-tuple point): 2-tuple
Computes the world position from the local position.
computeWorldRotation (BonePose bone): float
Computes the world rotation from the local rotation.
Inherited methods
copy (): PointAttachment from Attachment
Returns a copy of the attachment.
An attachment that displays a textured quadrilateral.
See Region attachments in the Spine User Guide.
RegionAttachment properties
height: float
The height of the region attachment in Spine.
rotation: float
The local rotation in degrees, counter clockwise.
scaleX: float
The local scaleX.
scaleY: float
The local scaleY.
width: float
The width of the region attachment in Spine.
x: float
The local x translation.
y: float
The local y translation.
Inherited properties
color: Color from HasSequence
The color the attachment is tinted, to be combined with SlotPose.color.
name: string readonly, from Attachment
The attachment's name.
path: string from HasSequence
The base path for the attachment's texture region.
sequence: Sequence readonly, from HasSequence
The sequence that provides texture regions, UVs, and vertex offsets for rendering this attachment.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
RegionAttachment methods
computeWorldVertices (Slot slot, float[] vertexOffsets, float[] worldVertices, int offset, int stride): void
Transforms the attachment's four vertices to world coordinates.
See World transforms in the Spine Runtimes Guide.
  • vertexOffsets The vertex Sequence.getOffsets.
  • worldVertices The output world vertices. Must have a length >= offset + 8.
  • offset The worldVertices index to begin writing values.
  • stride The number of worldVertices entries between the value pairs written.
getOffsets (SlotPose pose): float[]
Returns the vertex Sequence.getOffsets for the specified slot pose.
Inherited methods
copy (): RegionAttachment from Attachment
Returns a copy of the attachment.
updateSequence (): void from HasSequence
Calls Sequence.update on this attachment's sequence.
Base class for an attachment with vertices that are transformed by one or more bones and can be deformed by SlotPose.deform.
VertexAttachment properties
bones: int[] nullable
The bones that affect the vertices. The entries are, for each vertex, the number of bones affecting the vertex followed by that many bone indices, which is the Skeleton.bones index. Null if this attachment has no weights.
id: int readonly
Returns a unique ID for this attachment.
vertices: float[]
The vertex positions in the bone's coordinate system. For a non-weighted attachment, the values are x,y pairs for each vertex. For a weighted attachment, the values are x,y,weight triplets for each bone affecting each vertex.
worldVerticesLength: int
The maximum number of world vertex values that can be output by computeWorldVertices using the count parameter.
Inherited properties
name: string readonly, from Attachment
The attachment's name.
timelineAttachment: Attachment nullable, from Attachment
Timelines for the timeline attachment are also applied to this attachment. May be null if no attachment-specific timelines should be applied.
VertexAttachment methods
computeWorldVertices (Skeleton skeleton, Slot slot, int start, int count, float[] worldVertices, int offset, int stride): void
Transforms the attachment's local vertices to world coordinates. If the SlotPose.deform is not empty, it is used to deform the vertices.
See World transforms in the Spine Runtimes Guide.
  • start The index of the first vertices value to transform. Each vertex has 2 values, x and y.
  • count The number of world vertex values to output. Must be <= worldVerticesLength - start.
  • worldVertices The output world vertices. Must have a length >= offset + count * stride / 2.
  • offset The worldVertices index to begin writing values.
  • stride The number of worldVertices entries between the value pairs written.
Inherited methods
copy (): Attachment from Attachment
Returns a copy of the attachment.
The interface which can be implemented to customize creating and populating attachments.
See Loading skeleton data in the Spine Runtimes Guide.
AttachmentLoader methods
newBoundingBoxAttachment (Skin skin, string name): BoundingBoxAttachment nullable
  • <return> May be null to not load the attachment.
newClippingAttachment (Skin skin, string name): ClippingAttachment nullable
  • <return> May be null to not load the attachment.
newMeshAttachment (Skin skin, string name, string path, Sequence sequence): MeshAttachment nullable
  • <return> May be null to not load the attachment. In that case null should also be returned for child meshes.
newPathAttachment (Skin skin, string name): PathAttachment nullable
  • <return> May be null to not load the attachment.
newPointAttachment (Skin skin, string name): PointAttachment nullable
  • <return> May be null to not load the attachment.
newRegionAttachment (Skin skin, string name, string path, Sequence sequence): RegionAttachment nullable
  • <return> May be null to not load the attachment.
An AttachmentLoader that configures attachments using texture regions from an TextureAtlas.
See Loading skeleton data in the Spine Runtimes Guide.
AtlasAttachmentLoader properties
allowMissingRegions: bool readonly
If true, findRegion may return null. If false, an error is raised if the texture region is not found. Default is false.
AtlasAttachmentLoader methods
findRegion (string name, string path): TextureAtlasRegion
Looks for the region with the specified path. If not found and allowMissingRegions is false, an error is raised.
findRegions (string name, string basePath, Sequence sequence): void
Sets each Sequence.regions by calling findRegion for each texture region using Sequence.getPath.
Inherited methods
newBoundingBoxAttachment (Skin skin, string name): BoundingBoxAttachment from AttachmentLoader
See AttachmentLoader.newBoundingBoxAttachment.
newClippingAttachment (Skin skin, string name): ClippingAttachment from AttachmentLoader
See AttachmentLoader.newClippingAttachment.
newMeshAttachment (Skin skin, string name, string path, Sequence sequence): MeshAttachment from AttachmentLoader
See AttachmentLoader.newMeshAttachment.
newPathAttachment (Skin skin, string name): PathAttachment from AttachmentLoader
See AttachmentLoader.newPathAttachment.
newPointAttachment (Skin skin, string name): PointAttachment from AttachmentLoader
See AttachmentLoader.newPointAttachment.
newRegionAttachment (Skin skin, string name, string path, Sequence sequence): RegionAttachment from AttachmentLoader
See AttachmentLoader.newRegionAttachment.
The setup pose for a bone.
BoneData properties
color: Color
The color of the bone as it was in Spine, or a default color if nonessential data was not exported. Bones are not usually rendered at runtime.
icon: string nullable
The bone icon name as it was in Spine, or null if nonessential data was not exported.
index: int readonly
The Skeleton.bones index.
length: float
The bone's length.
parent: BoneData nullable, readonly
The parent bone, or null if this bone is the root.
visible: bool
False if the bone was hidden in Spine and nonessential data was exported. Does not affect runtime rendering.
Inherited properties
name: string readonly, from PosedData
The bone's name, unique across all bones in the skeleton.
See SkeletonData.findBone and Skeleton.findBone.
setupPose: BoneLocal readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.

Bone

extends PosedActive
A bone has a number of poses:
Bone properties
children: list<Bone> readonly
The immediate children of this bone.
parent: Bone nullable, readonly
The parent bone, or null if this is the root bone.
Inherited properties
appliedPose: BonePose readonly, from Posed
data: BoneData readonly, from Posed
The constraint's setup pose data.
pose: BoneLocal readonly, from Posed
Bone methods
Inherited methods
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed

BoneLocal

implements Pose
Stores a bone's local pose.
BoneLocal properties
inherit: Inherit
Determines how parent world transforms affect this bone.
rotation: float
The local rotation in degrees, counter clockwise.
scaleX: float
The local scaleX.
scaleY: float
The local scaleY.
shearX: float
The local shearX.
shearY: float
The local shearY.
x: float
The local x translation.
y: float
The local y translation.
BoneLocal methods
setPosition (float x, float y): void
setScale (float scaleX, float scaleY): void
setScale (float scale): void
Inherited methods
set (BoneLocal pose): void from Pose

BonePose

extends BoneLocal implements Update
The applied local pose and world transform for a bone. This is the Bone.pose with constraints applied and the world transform computed by Skeleton.updateWorldTransform and updateWorldTransform.
If the world transform is changed, call updateLocalTransform before using the local transform. The local transform may be needed by other code (eg to apply another constraint).
After changing the world transform, call updateWorldTransform on every descendant bone. It may be more convenient to modify the local transform instead, then call Skeleton.updateWorldTransform to update the world transforms for all bones and apply constraints.
BonePose properties
a: float
The world transform [a b][c d] x-axis x component.
b: float
The world transform [a b][c d] y-axis x component.
c: float
The world transform [a b][c d] x-axis y component.
d: float
The world transform [a b][c d] y-axis y component.
worldRotationX: float readonly
The world rotation for the X axis, calculated using a and c.
worldRotationY: float readonly
The world rotation for the Y axis, calculated using b and d.
worldScaleX: float readonly
The magnitude (always positive) of the world scale X, calculated using a and c.
worldScaleY: float readonly
The magnitude (always positive) of the world scale Y, calculated using b and d.
worldX: float
The world X position.
worldY: float
The world Y position.
Inherited properties
inherit: Inherit from BoneLocal
Determines how parent world transforms affect this bone.
rotation: float from BoneLocal
The local rotation in degrees, counter clockwise.
scaleX: float from BoneLocal
The local scaleX.
scaleY: float from BoneLocal
The local scaleY.
shearX: float from BoneLocal
The local shearX.
shearY: float from BoneLocal
The local shearY.
x: float from BoneLocal
The local x translation.
y: float from BoneLocal
The local y translation.
BonePose methods
localToWorld (2-tuple local): 2-tuple
Transforms a point from the bone's local coordinates to world coordinates.
localToWorldRotation (float localRotation): float
Transforms a local rotation to a world rotation.
parentToWorld (2-tuple world): 2-tuple
Transforms a point from the parent bone's coordinates to world coordinates.
rotateWorld (float degrees): void
Rotates the world transform the specified amount.
updateLocalTransform (Skeleton skeleton): void
Computes the local transform values from the world transform.
Some information is ambiguous in the world transform, such as -1,-1 scale versus 180 rotation. The local transform after calling this method is equivalent to the local transform used to compute the world transform, but may not be identical.
updateWorldTransform (Skeleton skeleton): void
Computes the world transform using the parent bone's world transform and this applied local pose. Child bones are not updated.
See World transforms in the Spine Runtimes Guide.
validateLocalTransform (Skeleton skeleton): void
If the world transform has been modified by constraints and the local transform no longer matches, updateLocalTransform is called. Call this after Skeleton.updateWorldTransform before using the applied local transform.
worldToLocal (2-tuple world): 2-tuple
Transforms a point from world coordinates to the bone's local coordinates.
worldToLocalRotation (float worldRotation): float
Transforms a world rotation to a local rotation.
worldToParent (2-tuple world): 2-tuple
Transforms a point from world coordinates to the parent bone's local coordinates.
Inherited methods
set (BoneLocal pose): void from Pose
setPosition (float x, float y): void from BoneLocal
setScale (float scaleX, float scaleY): void from BoneLocal
setScale (float scale): void from BoneLocal
update (Skeleton skeleton, Physics physics): void from Update
Called by Skeleton.updateCache to compute the world transform, if needed.
  • physics Determines how physics and other non-deterministic updates are applied.
Determines how a bone inherits world transforms from parent bones.
Inherit Values
normal
onlyTranslation
noRotationOrReflection
noScale
noScaleOrReflection
ConstraintData properties
Inherited properties
name: string readonly, from PosedData
The constraint's name, unique across all constraints in the skeleton.
See SkeletonData.findConstraint and Skeleton.findConstraint.
setupPose: Pose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
ConstraintData methods
create (Skeleton skeleton): Constraint

Constraint

extends PosedActive implements Update
Constraint properties
Inherited properties
appliedPose: Pose readonly, from Posed
data: ConstraintData readonly, from Posed
The constraint's setup pose data.
pose: Pose readonly, from Posed
Constraint methods
copy (Skeleton skeleton): Constraint
Inherited methods
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
See Update.update.
Stores the setup pose for an IkConstraint.
See IK constraints in the Spine User Guide.
IkConstraintData properties
bones: list<BoneData> readonly
The bones that are constrained by this IK constraint.
target: BoneData
The bone that is the IK target.
uniform: bool
When true and IkConstraintPose.compress or IkConstraintPose.stretch is used, the bone is scaled on both the X and Y axes.
Inherited properties
name: string readonly, from PosedData
setupPose: IkConstraintPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
IkConstraintData methods
Inherited methods
create (Skeleton skeleton): IkConstraint from ConstraintData
Stores the current pose for an IK constraint. An IK constraint adjusts the rotation of 1 or 2 constrained bones so the tip of the last bone is as close to the target bone as possible.
See IK constraints in the Spine User Guide.
IkConstraint properties
bones: list<BonePose> readonly
The 1 or 2 bones that will be modified by this IK constraint.
target: Bone
The bone that is the IK target.
Inherited properties
appliedPose: IkConstraintPose readonly, from Posed
data: IkConstraintData readonly, from Posed
The constraint's setup pose data.
pose: IkConstraintPose readonly, from Posed
IkConstraint methods
apply (Skeleton skeleton, BonePose parent, BonePose child, float targetX, float targetY, int bendDir, bool stretch, bool uniform, float softness, float mix): void static
Applies 2 bone IK. The target is specified in the world coordinate system.
  • child A direct descendant of the parent bone.
apply (Skeleton skeleton, BonePose bone, float targetX, float targetY, bool compress, bool stretch, bool uniform, float mix): void static
Applies 1 bone IK. The target is specified in the world coordinate system.
Inherited methods
copy (Skeleton skeleton): IkConstraint from Constraint
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
Applies the constraint to the constrained bones.
  • physics Determines how physics and other non-deterministic updates are applied.
Stores the current pose for an IK constraint.
IkConstraintPose properties
bendDirection: int
For two bone IK, controls the bend direction of the IK bones, either 1 or -1.
compress: bool
For one bone IK, when true and the target is too close, the bone is scaled to reach it.
mix: float
A percentage (0-1) that controls the mix between the constrained and unconstrained rotation.
For two bone IK: if the parent bone has local nonuniform scale, the child bone's local Y translation is set to 0.
softness: float
For two bone IK, the target bone's distance from the maximum reach of the bones where rotation begins to slow. The bones will not straighten completely until the target is this far out of range.
stretch: bool
When true and the target is out of range, the parent bone is scaled to reach it.
For two bone IK: 1) the child bone's local Y translation is set to 0, 2) stretch is not applied if softness is > 0, and 3) if the parent bone has local nonuniform scale, stretch is not applied.
IkConstraintPose methods
Inherited methods
set (IkConstraintPose pose): void from Pose
Stores the setup pose for a PathConstraint.
See Path constraints in the Spine User Guide.
PathConstraintData properties
bones: list<BoneData> readonly
The bones that will be modified by this path constraint.
offsetRotation: float
An offset added to the constrained bone rotation.
positionMode: PositionMode
The mode for positioning the first bone on the path.
rotateMode: RotateMode
The mode for adjusting the rotation of the bones.
slot: SlotData
The slot whose path attachment will be used to constrained the bones.
spacingMode: SpacingMode
The mode for positioning the bones after the first bone on the path.
Inherited properties
name: string readonly, from PosedData
setupPose: PathConstraintPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
PathConstraintData methods
Inherited methods
create (Skeleton skeleton): PathConstraint from ConstraintData
Stores the current pose for a path constraint. A path constraint adjusts the rotation, translation, and scale of the constrained bones so they follow a PathAttachment.
See Path constraints in the Spine User Guide.
PathConstraint properties
bones: list<BonePose> readonly
The bones that will be modified by this path constraint.
slot: Slot
The slot whose path attachment will be used to constrained the bones.
Inherited properties
appliedPose: PathConstraintPose readonly, from Posed
data: PathConstraintData readonly, from Posed
The constraint's setup pose data.
pose: PathConstraintPose readonly, from Posed
PathConstraint methods
Inherited methods
copy (Skeleton skeleton): PathConstraint from Constraint
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
Applies the constraint to the constrained bones.
  • physics Determines how physics and other non-deterministic updates are applied.
Stores a pose for a path constraint.
PathConstraintPose properties
mixRotate: float
A percentage (0-1) that controls the mix between the constrained and unconstrained rotation.
mixX: float
A percentage (0-1) that controls the mix between the constrained and unconstrained translation X.
mixY: float
A percentage (0-1) that controls the mix between the constrained and unconstrained translation Y.
position: float
The position along the path.
spacing: float
The spacing between bones.
PathConstraintPose methods
Inherited methods
set (PathConstraintPose pose): void from Pose
Controls how the first bone is positioned along the path.
See Position mode in the Spine User Guide.
PositionMode Values
fixed
percent
Controls how bones are rotated, translated, and scaled to match the path.
See Rotate mode in the Spine User Guide.
RotateMode Values
tangent
chain
chainScale
When chain scale, constrained bones should all have the same parent. That way when the path constraint scales a bone, it doesn't affect other constrained bones.
Controls how bones after the first bone are positioned along the path.
See Spacing mode in the Spine User Guide.
SpacingMode Values
length
fixed
percent
proportional
Stores the setup pose for a PhysicsConstraint.
See Physics constraints in the Spine User Guide.
PhysicsConstraintData properties
bone: BoneData
The bone constrained by this physics constraint.
dampingGlobal: bool
gravityGlobal: bool
inertiaGlobal: bool
limit: float
massGlobal: bool
mixGlobal: bool
rotate: float
scaleX: float
shearX: float
step: float
strengthGlobal: bool
windGlobal: bool
x: float
y: float
Inherited properties
name: string readonly, from PosedData
setupPose: PhysicsConstraintPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
PhysicsConstraintData methods
Inherited methods
create (Skeleton skeleton): PhysicsConstraint from ConstraintData
Stores the current pose for a physics constraint. A physics constraint applies physics to bones.
See Physics constraints in the Spine User Guide.
PhysicsConstraint properties
bone: BonePose
The bone constrained by this physics constraint.
Inherited properties
appliedPose: PhysicsConstraintPose readonly, from Posed
data: PhysicsConstraintData readonly, from Posed
The constraint's setup pose data.
pose: PhysicsConstraintPose readonly, from Posed
PhysicsConstraint methods
reset (Skeleton skeleton): void
rotate (float x, float y, float degrees): void
Rotates the physics constraint so next update forces are applied as if the bone rotated around the specified point in world space.
translate (float x, float y): void
Translates the physics constraint so next update forces are applied as if the bone moved an additional amount in world space.
Inherited methods
copy (Skeleton skeleton): PhysicsConstraint from Constraint
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
Applies the constraint to the constrained bones.
  • physics Determines how physics and other non-deterministic updates are applied.
Stores a pose for a physics constraint.
PhysicsConstraintPose properties
damping: float
gravity: float
inertia: float
massInverse: float
mix: float
A percentage (0-1) that controls the mix between the constrained and unconstrained poses.
strength: float
wind: float
PhysicsConstraintPose methods
Inherited methods
set (PhysicsConstraintPose pose): void from Pose
Stores the setup pose for a Slider.
SliderData properties
additive: bool
animation: Animation
bone: BoneData nullable
local: bool
loop: bool
offset: float
property: FromProperty nullable
scale: float
Inherited properties
name: string readonly, from PosedData
setupPose: SliderPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
SliderData methods
Inherited methods
create (Skeleton skeleton): Slider from ConstraintData
Stores the setup pose for a PhysicsConstraint.
See Physics constraints in the Spine User Guide.
Slider properties
bone: Bone
Inherited properties
appliedPose: SliderPose readonly, from Posed
data: SliderData readonly, from Posed
The constraint's setup pose data.
pose: SliderPose readonly, from Posed
Slider methods
Inherited methods
copy (Skeleton skeleton): Slider from Constraint
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
See Update.update.

SliderPose

implements Pose
Stores a pose for a slider.
SliderPose properties
mix: float
time: float
SliderPose methods
Inherited methods
set (SliderPose pose): void from Pose
Stores the setup pose for a TransformConstraint.
See Transform constraints in the Spine User Guide.
TransformConstraintData properties
ROTATION = 0: int static, readonly
X = 1: int static, readonly
Y = 2: int static, readonly
SCALEX = 3: int static, readonly
SCALEY = 4: int static, readonly
SHEARY = 5: int static, readonly
additive: bool
Adds the source bone transform to the constrained bones instead of setting it absolutely.
bones: list<BoneData> readonly
The bones that will be modified by this transform constraint.
clamp: bool
Prevents constrained bones from exceeding the ranged defined by ToProperty.offset and ToProperty.max.
localSource: bool
Reads the source bone's local transform instead of its world transform.
localTarget: bool
Sets the constrained bones' local transforms instead of their world transforms.
offsetRotation: float
An offset added to the constrained bone rotation.
offsetScaleX: float
An offset added to the constrained bone scaleX.
offsetScaleY: float
An offset added to the constrained bone scaleY.
offsetShearY: float
An offset added to the constrained bone shearY.
offsetX: float
An offset added to the constrained bone X translation.
offsetY: float
An offset added to the constrained bone Y translation.
properties: list<FromProperty> readonly
The mapping of transform properties to other transform properties.
source: BoneData
The bone whose world transform will be copied to the constrained bones.
Inherited properties
name: string readonly, from PosedData
setupPose: TransformConstraintPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
TransformConstraintData methods
Inherited methods
create (Skeleton skeleton): TransformConstraint from ConstraintData
Stores the current pose for a transform constraint. A transform constraint adjusts the world transform of the constrained bones to match that of the source bone.
See Transform constraints in the Spine User Guide.
TransformConstraint properties
bones: list<BonePose> readonly
The bones that will be modified by this transform constraint.
source: Bone
The bone whose world transform will be copied to the constrained bones.
Inherited properties
appliedPose: TransformConstraintPose readonly, from Posed
data: TransformConstraintData readonly, from Posed
The constraint's setup pose data.
pose: TransformConstraintPose readonly, from Posed
TransformConstraint methods
Inherited methods
copy (Skeleton skeleton): TransformConstraint from Constraint
isActive (): bool from PosedActive
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
setupPose (): void from Posed
update (Skeleton skeleton, Physics physics): void from Update
Applies the constraint to the constrained bones.
  • physics Determines how physics and other non-deterministic updates are applied.
Stores a pose for a transform constraint.
TransformConstraintPose properties
mixRotate: float
A percentage (0-1) that controls the mix between the constrained and unconstrained rotation.
mixScaleX: float
A percentage (0-1) that controls the mix between the constrained and unconstrained scale X.
mixScaleY: float
A percentage (0-1) that controls the mix between the constrained and unconstrained scale X.
mixShearY: float
A percentage (0-1) that controls the mix between the constrained and unconstrained shear Y.
mixX: float
A percentage (0-1) that controls the mix between the constrained and unconstrained translation X.
mixY: float
A percentage (0-1) that controls the mix between the constrained and unconstrained translation Y.
TransformConstraintPose methods
Inherited methods
set (TransformConstraintPose pose): void from Pose
Source property for a TransformConstraint.
FromProperty properties
offset: float readonly
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly
Constrained properties.
FromProperty methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float
Reads this property from the specified bone.
FromRotate properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromRotate methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
FromScaleX properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromScaleX methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
FromScaleY properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromScaleY methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
FromShearY properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromShearY methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
FromX properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromX methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
FromY properties
Inherited properties
offset: float readonly, from FromProperty
The value of this property that corresponds to ToProperty.offset.
to: list<ToProperty> readonly, from FromProperty
Constrained properties.
FromY methods
Inherited methods
value (Skeleton skeleton, BonePose source, bool local, float[] offsets): float from FromProperty
Reads this property from the specified bone.
Constrained property for a TransformConstraint.
ToProperty properties
max: float readonly
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly
The value of this property that corresponds to FromProperty.offset.
scale: float readonly
The scale of the FromProperty value in relation to this property.
ToProperty methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void
Applies the value to this property.
mix (TransformConstraintPose pose): float
Reads the mix for this property from the specified pose.
ToRotate properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToRotate methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.
ToScaleX properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToScaleX methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.
ToScaleY properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToScaleY methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.
ToShearY properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToShearY methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.

ToX

extends ToProperty
ToX properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToX methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.

ToY

extends ToProperty
ToY properties
Inherited properties
max: float readonly, from ToProperty
The maximum value of this property when TransformConstraintData.clamped.
offset: float readonly, from ToProperty
The value of this property that corresponds to FromProperty.offset.
scale: float readonly, from ToProperty
The scale of the FromProperty value in relation to this property.
ToY methods
Inherited methods
apply (Skeleton skeleton, TransformConstraintPose pose, BonePose bone, float value, bool local, bool additive): void from ToProperty
Applies the value to this property.
mix (TransformConstraintPose pose): float from ToProperty
Reads the mix for this property from the specified pose.
Stores the setup pose values for an Event.
See Events in the Spine User Guide.
EventData properties
audioPath: string
balance: float
floatValue: float
The event's float value.
intValue: int
The event's int value.
name: string readonly
The name of the event, unique across all events in the skeleton.
See SkeletonData.findEvent.
stringValue: string
The event's string value or an empty string.
volume: float
Stores the current pose values for an Event.
See Timeline.apply, AnimationStateListener.event, and Events in the Spine User Guide.
Event properties
balance: float
data: EventData readonly
The event's setup pose data.
floatValue: float
The event's float value.
intValue: int
The event's int value.
stringValue: string
The event's string value or an empty string.
time: float readonly
The animation time this event was keyed.
volume: float
The base class for all constrained datas.
PosedData properties
name: string readonly
setupPose: Pose readonly
skinRequired: bool
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
Pose methods
set (Pose pose): void
Posed properties
appliedPose: Pose readonly
data: PosedData readonly
The constraint's setup pose data.
pose: Pose readonly
Posed methods
setupPose (): void
PosedActive properties
Inherited properties
appliedPose: Pose readonly, from Posed
data: PosedData readonly, from Posed
The constraint's setup pose data.
pose: Pose readonly, from Posed
PosedActive methods
isActive (): bool
Returns false when this constraint won't be updated by Skeleton.updateWorldTransform because a skin is required and the Skeleton.skin does not contain this item. See Skin.bones, Skin.constraints, PosedData.skinRequired, and Skeleton.updateCache.
Inherited methods
setupPose (): void from Posed
Holds texture regions, UVs, and vertex offsets for rendering a region or mesh attachment. regions must be populated and update called before use.
Sequence properties
digits: int
id: int readonly
Returns a unique ID for this attachment.
regions: TextureRegion[] readonly
setupIndex: int
The index of the region to show for the setup pose.
start: int
Sequence methods
getOffsets (int index): float[]
Returns vertex offsets from the center of a RegionAttachment. Invalid to call for a MeshAttachment.
getPath (string basePath, int index): string
getRegion (int index): TextureRegion
getUVs (int index): float[]
hasPathSuffix (): bool
resolveIndex (SlotPose pose): int
update (HasSequence attachment): void
Computes UVs and offsets for the specified attachment. Must be called if the regions or attachment properties are changed.
SequenceMode Values
hold
once
loop
pingpong
onceReverse
loopReverse
pingpongReverse
Collects each visible BoundingBoxAttachment and computes the world vertices for its polygon. The polygon vertices are provided along with convenience methods for doing hit detection.
SkeletonBounds properties
boundingBoxes: list<BoundingBoxAttachment> readonly
The visible bounding boxes.
height: float readonly
The height of the axis aligned bounding box.
maxX: float readonly
The right edge of the axis aligned bounding box.
maxY: float readonly
The top edge of the axis aligned bounding box.
minX: float readonly
The left edge of the axis aligned bounding box.
minY: float readonly
The bottom edge of the axis aligned bounding box.
polygons: list<float[]> readonly
The world vertices for the bounding box polygons.
width: float readonly
The width of the axis aligned bounding box.
SkeletonBounds methods
aabbContainsPoint (float x, float y): bool
Returns true if the axis aligned bounding box contains the point.
aabbIntersectsSegment (float x1, float y1, float x2, float y2): bool
Returns true if the axis aligned bounding box intersects the line segment.
aabbIntersectsSkeleton (SkeletonBounds bounds): bool
Returns true if the axis aligned bounding box intersects the axis aligned bounding box of the specified bounds.
containsPoint (float[] polygon, float x, float y): bool
Returns true if the polygon contains the point.
containsPoint (float x, float y): BoundingBoxAttachment nullable
Returns the first bounding box attachment that contains the point, or null. When doing many checks, it is usually more efficient to only call this method if aabbContainsPoint returns true.
getPolygon (BoundingBoxAttachment boundingBox): float[] nullable
Returns the polygon for the specified bounding box, or null.
intersectsSegment (float[] polygon, float x1, float y1, float x2, float y2): bool
Returns true if the polygon contains any part of the line segment.
intersectsSegment (float x1, float y1, float x2, float y2): BoundingBoxAttachment nullable
Returns the first bounding box attachment that contains any part of the line segment, or null. When doing many checks, it is usually more efficient to only call this method if aabbIntersectsSegment returns true.
update (Skeleton skeleton, bool updateAabb): void
Clears any previous polygons, finds all visible bounding box attachments, and computes the world vertices for each bounding box's polygon.
  • updateAabb If true, the axis aligned bounding box containing all the polygons is computed. If false, the SkeletonBounds AABB methods will always return true.
Stores the setup pose and all of the stateless data for a skeleton.
See Data objects in the Spine Runtimes Guide.
SkeletonData properties
animations: list<Animation> readonly
The skeleton's animations.
audioPath: string nullable
The path to the audio directory as defined in Spine, or null if nonessential data was not exported.
bones: list<BoneData> readonly
The skeleton's bones, sorted parent first. The root bone is always the first bone.
constraints: list<ConstraintData> readonly
The skeleton's constraints.
defaultSkin: Skin nullable
The skeleton's default skin. By default this skin contains all attachments that were not in a skin in Spine.
See Skeleton.getAttachment.
events: list<EventData> readonly
The skeleton's events.
fps: float
The dopesheet FPS in Spine, or zero if nonessential data was not exported.
hash: string nullable
The skeleton data hash. This value will change if any of the skeleton data has changed.
height: float
The height of the skeleton's axis aligned bounding box in the setup pose.
imagesPath: string nullable
The path to the images directory as defined in Spine, or null if nonessential data was not exported.
name: string nullable
The skeleton's name, which by default is the name of the skeleton data file when possible, or null when a name hasn't been set.
referenceScale: float
Baseline scale factor for applying physics and other effects based on distance to non-scalable properties, such as angle or scale. Default is 100.
skins: list<Skin> readonly
All skins, including the default skin.
slots: list<SlotData> readonly
The skeleton's slots in the setup pose draw order.
version: string nullable
The Spine version used to export the skeleton data, or null.
width: float
The width of the skeleton's axis aligned bounding box in the setup pose.
x: float
The X coordinate of the skeleton's axis aligned bounding box in the setup pose.
y: float
The Y coordinate of the skeleton's axis aligned bounding box in the setup pose.
SkeletonData methods
findAnimation (string animationName): Animation nullable
Finds an animation by comparing each animation's name. It is more efficient to cache the results of this method than to call it multiple times.
findBone (string boneName): BoneData nullable
Finds a bone by comparing each bone's name. It is more efficient to cache the results of this method than to call it multiple times.
findConstraint (string constraintName): ConstraintData nullable
findEvent (string eventDataName): EventData nullable
Finds an event by comparing each events's name. It is more efficient to cache the results of this method than to call it multiple times.
findSkin (string skinName): Skin nullable
Finds a skin by comparing each skin's name. It is more efficient to cache the results of this method than to call it multiple times.
findSliderAnimations (list<Animation> animations): list<Animation>
Collects animations used by slider constraints.
Slider animations are designed to be applied by slider constraints rather than on their own. Applications that have a user choose an animation may want to exclude them.
findSlot (string slotName): SlotData nullable
Finds a slot by comparing each slot's name. It is more efficient to cache the results of this method than to call it multiple times.
Stores the current pose for a skeleton.
See Instance objects in the Spine Runtimes Guide.
Skeleton properties
bones: list<Bone> readonly
The skeleton's bones, sorted parent first. The root bone is always the first bone.
color: Color
The color to tint all the skeleton's attachments.
constraints: list<Constraint> readonly
The skeleton's constraints.
data: SkeletonData readonly
The skeleton's setup pose data.
drawOrder: list<Slot>
The skeleton's slots in the order they should be drawn. The returned list may be modified to change the draw order.
gravityX: float
gravityY: float
physicsConstraints: list<PhysicsConstraint> readonly
rootBone: Bone readonly
The root bone, or null if the skeleton has no bones.
scaleX: float
Scales the entire skeleton on the X axis.
Bones that do not inherit scale are still affected by this property.
scaleY: float
Scales the entire skeleton on the Y axis.
Bones that do not inherit scale are still affected by this property.
skin: Skin nullable
The skeleton's current skin.
slots: list<Slot> readonly
The skeleton's slots.
time: float
The skeleton's time, used for time-based manipulations, such as PhysicsConstraint.
See update.
updateCache: list<Update> readonly
The list of bones and constraints, sorted in the order they should be updated, as computed by updateCache.
windX: float
windY: float
x: float
Sets the skeleton X position, which is added to the root bone worldX position.
Bones that do not inherit translation are still affected by this property.
y: float
Sets the skeleton Y position, which is added to the root bone worldY position.
Bones that do not inherit translation are still affected by this property.
Skeleton methods
findBone (string boneName): Bone nullable
Finds a bone by comparing each bone's name. It is more efficient to cache the results of this method than to call it repeatedly.
findConstraint (string constraintName): Constraint nullable
findSlot (string slotName): Slot nullable
Finds a slot by comparing each slot's name. It is more efficient to cache the results of this method than to call it repeatedly.
getAttachment (int slotIndex, string attachmentName): Attachment nullable
Finds an attachment by looking in the skin and SkeletonData.defaultSkin using the slot index and attachment name. First the skin is checked and if the attachment was not found, the default skin is checked.
See Runtime skins in the Spine Runtimes Guide.
getAttachment (string slotName, string attachmentName): Attachment nullable
Finds an attachment by looking in the skin and SkeletonData.defaultSkin using the slot name and attachment name.
See getAttachment.
getBounds (2-tuple offset, 2-tuple size, float[] temp, SkeletonClipping clipper): void
Returns the axis aligned bounding box (AABB) of the region and mesh attachments for the current pose. Optionally applies clipping.
  • offset An output value, the distance from the skeleton origin to the bottom left corner of the AABB.
  • size An output value, the width and height of the AABB.
  • temp Working memory to temporarily store attachments' computed world vertices.
  • clipper SkeletonClipping to use. If null, no clipping is applied.
getBounds (2-tuple offset, 2-tuple size, float[] temp): void
Returns the axis aligned bounding box (AABB) of the region and mesh attachments for the current pose.
  • offset An output value, the distance from the skeleton origin to the bottom left corner of the AABB.
  • size An output value, the width and height of the AABB.
  • temp Working memory to temporarily store attachments' computed world vertices.
physicsRotate (float x, float y, float degrees): void
Calls PhysicsConstraint.rotate for each physics constraint.
physicsTranslate (float x, float y): void
Calls PhysicsConstraint.translate for each physics constraint.
setAttachment (string slotName, string attachmentName nullable): void
A convenience method to set an attachment by finding the slot with findSlot, finding the attachment with getAttachment, then setting the slot's SlotPose.attachment.
  • attachmentName May be null to clear the slot's attachment.
setColor (float r, float g, float b, float a): void
A convenience method for setting the skeleton color. The color can also be set by modifying color.
setPosition (float x, float y): void
Sets the skeleton X and Y position, which is added to the root bone worldX and worldY position.
Bones that do not inherit translation are still affected by this property.
setScale (float scaleX, float scaleY): void
Scales the entire skeleton on the X and Y axes.
Bones that do not inherit scale are still affected by this property.
setSkin (Skin newSkin nullable): void
Sets the skin used to look up attachments before looking in the SkeletonData.defaultSkin. If the skin is changed, updateCache is called.
Attachments from the new skin are attached if the corresponding attachment from the old skin was attached. If there was no old skin, each slot's setup mode attachment is attached from the new skin.
After changing the skin, the visible attachments can be reset to those attached in the setup pose by calling setupPoseSlots. Also, often AnimationState.apply is called before the next time the skeleton is rendered to allow any attachment keys in the current animation(s) to hide or show attachments from the new skin.
setSkin (string skinName): void
Sets a skin by name.
See setSkin.
setupPose (): void
Sets the bones, constraints, slots, and draw order to their setup pose values.
setupPoseBones (): void
Sets the bones and constraints to their setup pose values.
setupPoseSlots (): void
Sets the slots and draw order to their setup pose values.
update (float delta): void
Increments the skeleton's time.
updateCache (): void
Caches information about bones and constraints. Must be called if the skin is modified or if bones, constraints, or weighted path attachments are added or removed.
updateWorldTransform (Physics physics): void
Updates the world transform for each bone and applies all constraints.
See World transforms in the Spine Runtimes Guide.
Determines how physics and other non-deterministic updates are applied.
Physics Values
none
Physics are not updated or applied.
reset
Physics are reset to the current pose.
update
Physics are updated and the pose from physics is applied.
pose
Physics are not updated but the pose from physics is applied.
The interface for items updated by Skeleton.updateWorldTransform.
Update methods
update (Skeleton skeleton, Physics physics): void
  • physics Determines how physics and other non-deterministic updates are applied.
Base class for loading skeleton data from a file.
See JSON and binary data in the Spine Runtimes Guide.
SkeletonLoader properties
scale: float
Scales bone positions, image sizes, and translations as they are loaded. This allows different size images to be used at runtime than were used in Spine.
See Scaling in the Spine Runtimes Guide.
SkeletonLoader methods
readSkeletonData (object data): SkeletonData
Deserializes the Spine skeleton data into a SkeletonData object.
Loads skeleton data in the Spine binary format.
See Spine binary format and JSON and binary data in the Spine Runtimes Guide.
SkeletonBinary properties
BONE_ROTATE = 0: int static, readonly
BONE_TRANSLATE = 1: int static, readonly
BONE_TRANSLATEX = 2: int static, readonly
BONE_TRANSLATEY = 3: int static, readonly
BONE_SCALE = 4: int static, readonly
BONE_SCALEX = 5: int static, readonly
BONE_SCALEY = 6: int static, readonly
BONE_SHEAR = 7: int static, readonly
BONE_SHEARX = 8: int static, readonly
BONE_SHEARY = 9: int static, readonly
BONE_INHERIT = 10: int static, readonly
SLOT_ATTACHMENT = 0: int static, readonly
SLOT_RGBA = 1: int static, readonly
SLOT_RGB = 2: int static, readonly
SLOT_RGBA2 = 3: int static, readonly
SLOT_RGB2 = 4: int static, readonly
SLOT_ALPHA = 5: int static, readonly
CONSTRAINT_IK = 0: int static, readonly
CONSTRAINT_PATH = 1: int static, readonly
CONSTRAINT_TRANSFORM = 2: int static, readonly
CONSTRAINT_PHYSICS = 3: int static, readonly
CONSTRAINT_SLIDER = 4: int static, readonly
ATTACHMENT_DEFORM = 0: int static, readonly
ATTACHMENT_SEQUENCE = 1: int static, readonly
PATH_POSITION = 0: int static, readonly
PATH_SPACING = 1: int static, readonly
PATH_MIX = 2: int static, readonly
PHYSICS_INERTIA = 0: int static, readonly
PHYSICS_STRENGTH = 1: int static, readonly
PHYSICS_DAMPING = 2: int static, readonly
PHYSICS_MASS = 4: int static, readonly
PHYSICS_WIND = 5: int static, readonly
PHYSICS_GRAVITY = 6: int static, readonly
PHYSICS_MIX = 7: int static, readonly
PHYSICS_RESET = 8: int static, readonly
SLIDER_TIME = 0: int static, readonly
SLIDER_MIX = 1: int static, readonly
CURVE_LINEAR = 0: int static, readonly
CURVE_STEPPED = 1: int static, readonly
CURVE_BEZIER = 2: int static, readonly
Inherited properties
scale: float from SkeletonLoader
Scales bone positions, image sizes, and translations as they are loaded. This allows different size images to be used at runtime than were used in Spine.
See Scaling in the Spine Runtimes Guide.
SkeletonBinary methods
Inherited methods
readSkeletonData (object data): SkeletonData from SkeletonLoader
Deserializes the Spine skeleton data into a SkeletonData object.
Loads skeleton data in the Spine JSON format.
JSON is human readable but the binary format is much smaller on disk and faster to load. See SkeletonBinary.
See Spine JSON format and JSON and binary data in the Spine Runtimes Guide.
SkeletonJson properties
Inherited properties
scale: float from SkeletonLoader
Scales bone positions, image sizes, and translations as they are loaded. This allows different size images to be used at runtime than were used in Spine.
See Scaling in the Spine Runtimes Guide.
SkeletonJson methods
Inherited methods
readSkeletonData (object data): SkeletonData from SkeletonLoader
Deserializes the Spine skeleton data into a SkeletonData object.
Stores attachments by slot index and placeholder name.
See SkeletonData.defaultSkin, Skeleton.skin, and Runtime skins in the Spine Runtimes Guide.
Skin properties
attachments: list<SkinEntry> readonly
Returns all attachments in this skin.
bones: list<BoneData> readonly
color: Color
The color of the skin as it was in Spine, or a default color if nonessential data was not exported.
constraints: list<ConstraintData> readonly
name: string readonly
The skin's name, unique across all skins in the skeleton.
See SkeletonData.findSkin.
Skin methods
addSkin (Skin skin): void
Adds all attachments, bones, and constraints from the specified skin to this skin.
clear (): void
Clears all attachments, bones, and constraints.
copySkin (Skin skin): void
Adds all bones and constraints and copies of all attachments from the specified skin to this skin. Mesh attachments are not copied, instead a new linked mesh is created. The attachment copies can be modified without affecting the originals.
getAttachment (int slotIndex, string placeholderName): Attachment nullable
Returns the attachment for the specified slot index and placeholder name, or null.
getAttachments (int slotIndex, list<SkinEntry> attachments): void
Returns all attachments in this skin for the specified slot index.
removeAttachment (int slotIndex, string placeholderName): void
Removes the attachment in the skin for the specified slot index and placeholder name, if any.
setAttachment (int slotIndex, string placeholderName, Attachment attachment): void
Adds an attachment to the skin for the specified slot index and placeholder name.
Stores an entry in the skin consisting of the slot index and placeholder name.
SkinEntry properties
attachment: Attachment readonly
placeholderName: string readonly
The placeholder name that the attachment is associated with.
slotIndex: int readonly
Stores the setup pose for a Slot.
SlotData properties
attachmentName: string nullable
The name of the attachment that is visible for this slot in the setup pose, or null if no attachment is visible.
blendMode: BlendMode
The blend mode for drawing the slot's attachment.
boneData: BoneData readonly
The bone this slot belongs to.
index: int readonly
The Skeleton.slots index.
visible: bool
False if the slot was hidden in Spine and nonessential data was exported. Does not affect runtime rendering.
Inherited properties
name: string readonly, from PosedData
The slot's name, unique across all slots in the skeleton.
See SkeletonData.findSlot and Skeleton.findSlot.
setupPose: SlotPose readonly, from PosedData
skinRequired: bool from PosedData
When true, Skeleton.updateWorldTransform only updates this constraint if the Skeleton.skin contains this constraint.
See Skin.constraints.
Determines how images are blended with existing pixels when drawn.
BlendMode Values
normal
additive
multiply
screen

Slot

extends Posed
Stores a slot's current pose. Slots organize attachments for Skeleton.drawOrder purposes and provide a place to store state for an attachment. State cannot be stored in an attachment itself because attachments are stateless and may be shared across multiple skeletons.
Slot properties
bone: Bone readonly
The bone this slot belongs to.
Inherited properties
appliedPose: SlotPose readonly, from Posed
data: SlotData readonly, from Posed
The constraint's setup pose data.
pose: SlotPose readonly, from Posed
Slot methods
Inherited methods
setupPose (): void from Posed

SlotPose

implements Pose
Stores a slot's pose. Slots organize attachments for Skeleton.drawOrder purposes and provide a place to store state for an attachment. State cannot be stored in an attachment itself because attachments are stateless and may be shared across multiple skeletons.
SlotPose properties
attachment: Attachment nullable
The current attachment for the slot, or null if the slot has no attachment.
color: Color
The color used to tint the slot's attachment. If darkColor is set, this is used as the light color for two color tinting.
darkColor: Color nullable
The dark color used to tint the slot's attachment for two color tinting, or null if two color tinting is not used. The dark color's alpha is not used.
deform: float[] readonly
Values to deform the slot's attachment. For an unweighted mesh, the entries are local positions for each vertex. For a weighted mesh, the entries are an offset for each vertex which will be added to the mesh's local vertex positions.
See VertexAttachment.computeWorldVertices and DeformTimeline.
sequenceIndex: int
The index of the texture region to display when the slot's attachment has a Sequence. -1 represents the Sequence.setupIndex.
SlotPose methods
Inherited methods
set (SlotPose pose): void from Pose
Stores information about texture regions in one or more texture pages.
Creating an atlas takes the atlas data file and a TextureLoader.
TextureAtlas properties
pages: list<TextureAtlasPage>
An atlas page for each texture.
regions: list<TextureAtlasRegion>
The atlas regions across all pages.
TextureAtlas methods
dispose (): void
Uses the TextureLoader to unload each TextureAtlasPage.rendererObject.
findRegion (string name): TextureAtlasRegion
Returns the first region found with the specified name, or null if it was not found. String comparison is used to find the region so the result should be cached rather than calling this method multiple times.
Settings for an atlas backing texture.
TextureAtlasPage properties
format: Format
The memory format to use for the texture.
height: int
The height in pixels of the image file.
magFilter: TextureFilter
The texture's magnification filter. Mipmap values are invalid for magnification.
minFilter: TextureFilter
The texture's minification filter.
name: string
The name of the image file for the texture.
rendererObject: object
A game toolkit specific object used by rendering code, usually set by a TextureLoader.
See Loading skeleton data.
uWrap: TextureWrap
The X axis texture wrap setting.
vWrap: TextureWrap
The Y axis texture wrap setting.
width: int
The width in pixels of the image file.
A texture region on an atlas page.
TextureAtlasRegion properties
height: int
The height in pixels of the unrotated texture region after whitepace stripping.
index: int
The number at the end of the original image file name, or -1 if none.
When sprites are packed, if the original file name ends with a number, it is stored as the index and is not considered as part of the region's name. This is useful for keeping animation frames in order.
name: string
The name of the region.
offsetX: float
Pixels stripped from the left of the unrotated texture region.
offsetY: float
Pixels stripped from the bottom of the unrotated texture region.
originalHeight: int
The height in pixels of the unrotated texture region before whitespace stripping.
originalWidth: int
The width in pixels of the unrotated texture region before whitespace stripping.
pads: int[]
The ninepatch padding, or null if not a ninepatch or the ninepatch has no padding. Has 4 entries: left, right, top, bottom.
page: TextureAtlasPage
The atlas page this region belongs to.
rotate: bool
If true, the texture region is stored in the atlas rotated 90 degrees counterclockwise.
splits: int[]
The ninepatch splits, or null if not a ninepatch. Has 4 entries: left, right, top, bottom.
u: float
The normalized (0-1) texture coordinate of the left edge of the texture region.
u2: float
The normalized (0-1) texture coordinate of the right edge of the texture region.
v: float
The normalized (0-1) texture coordinate of the top edge of the texture region.
v2: float
The normalized (0-1) texture coordinate of the bottom edge of the texture region.
width: int
The width in pixels of the unrotated texture region after whitespace stripping.
x: int
Pixels from the left edge of the texture to the left edge of the texture region.
y: int
Pixels from the bottom edge of the texture to the bottom edge of the texture region.
The memory format to use when loading an image into the TextureAtlasPage texture.
Format Values
Alpha
Intensity
LuminanceAlpha
RGB565
RGBA4444
RGB888
RGBA8888
The filtering for magnification or minification of the TextureAtlasPage texture.
TextureFilter Values
Nearest
Linear
MipMap
MipMapNearestNearest
MipMapLinearNearest
MipMapNearestLinear
MipMapLinearLinear
The interface which can be implemented to customize loading of TextureAtlasPage images for an TextureAtlas.
See Loading skeleton data.
TextureLoader methods
load (TextureAtlasPage page, string path): void
Loads a texture using the TextureAtlasPage.name or the image at the specified path and sets the TextureAtlasPage.rendererObject.
unload (object rendererObject): void
Unloads the rendererObject previously loaded in load.
The texture wrapping mode for UVs outside the TextureAtlasPage texture.
TextureWrap Values
MirroredRepeat
ClampToEdge
Repeat

Previous: Runtime Skins