# Sandbox.Animation.Clip

A compiled animation clip (.anim) - a compressed pose stream authored against a
[Sandbox.Animation.Clip.Skeleton](/api/Sandbox.Animation.Clip/Skeleton).

- Kind: class
- Namespace: `Sandbox.Animation`
- Assembly: `Sandbox.Engine`
- Inherits: [Sandbox.Resource](/api/Sandbox.Resource)
- Modifiers: sealed

## Properties

- [`AverageLinearVelocity`](/api/Sandbox.Animation.Clip/AverageLinearVelocity): Average speed the root moves at over the clip, in units per second.
- [`Duration`](/api/Sandbox.Animation.Clip/Duration): Length of the clip in seconds.
- [`FrameCount`](/api/Sandbox.Animation.Clip/FrameCount): How many frames of pose data this clip holds.
- [`FrameRate`](/api/Sandbox.Animation.Clip/FrameRate): Frames per second. Zero for single frame clips.
- [`IsAdditive`](/api/Sandbox.Animation.Clip/IsAdditive): Whether this clip is a difference to be layered onto another pose rather than a pose itself.
- [`IsBound`](/api/Sandbox.Animation.Clip/IsBound): Whether the clip's skeleton has loaded. Sampling returns identity transforms until it has.
- [`IsError`](/api/Sandbox.Animation.Clip/IsError): Whether the clip is invalid, or has not yet loaded.
- [`IsValid`](/api/Sandbox.Animation.Clip/IsValid)
- [`Name`](/api/Sandbox.Animation.Clip/Name): Clip resource name.
- [`Skeleton`](/api/Sandbox.Animation.Clip/Skeleton): The skeleton this clip was authored against. Null if it failed to load.
- [`SkeletonName`](/api/Sandbox.Animation.Clip/SkeletonName): The name of the skeleton this clip was authored against.
- [`SyncEventCount`](/api/Sandbox.Animation.Clip/SyncEventCount): How many sync events the clip is divided into. Sync events let clips of different lengths be blended by phase rather than by time.
- [`TrackCount`](/api/Sandbox.Animation.Clip/TrackCount): How many bone tracks the clip encodes.

## Methods

- [`GetEvents`](/api/Sandbox.Animation.Clip/GetEvents): Read all game-defined events and their authored timing, without playing the clip. Events are returned in start-time order, with a fresh payload for each enumeration. Native engine events are not included.
- [`GetLocalTransform`](/api/Sandbox.Animation.Clip/GetLocalTransform): Sample one bone's transform, relative to its parent bone.
- [`GetRootMotion`](/api/Sandbox.Animation.Clip/GetRootMotion): Sample the root motion transform, relative to where the clip started.
- [`Load`](/api/Sandbox.Animation.Clip/Load): Load an animation clip from the given file.
