A target-path pair within a larger Animation, which refers to an AnimationSampler storing the keyframe data for that pair.

A target is always a Node, in the core glTF spec. A path is any property of that Node that can be affected by animation: translation, rotation, scale, or weights. An Animation affecting the positions and rotations of several Nodes would contain one channel for each Node-position or Node-rotation pair. The keyframe data for an AnimationChannel is stored in an AnimationSampler, which must be attached to the same Animation.


const node = doc.getRoot()
    .find((node) => node.getName() === 'Cog');

const channel = doc.createAnimationChannel('cogRotation')





Property type.

TargetPath: Record<string, AnimationChannelTargetPath> = ...

Name of the property to be modified by an animation channel.


  • Events.

  • dispose(): void
  • Removes both inbound references to and outbound references from this object. At the end of the process the object holds no references, and nothing holds references to it. A disposed object is not reusable.

  • Returns true if two properties are deeply equivalent, recursively comparing the attributes of the properties. Optionally, a 'skip' set may be included, specifying attributes whose values should not be considered in the comparison.

    Example: Two Primitives are equivalent if they have accessors and materials with equivalent content — but not necessarily the same specific accessors and materials.

  • getDefaults(): Nullable<IAnimationChannel>
  • getExtension<Prop>(name: string): Prop
  • getExtras(): Record<string, unknown>
  • getName(): string
  • getTargetNode(): Node
  • init(): void
  • isDisposed(): boolean
  • Returns true if the node has been permanently removed from the graph.

  • listExtensions(): ExtensionProperty<IProperty>[]
  • listParents(): Property<IProperty>[]
  • Returns a list of all properties that hold a reference to this property. For example, a material may hold references to various textures, but a texture does not hold references to the materials that use it.

    It is often necessary to filter the results for a particular type: some resources, like Accessors, may be referenced by different types of properties. Most properties include the Root as a parent, which is usually not of interest.


    const materials = texture
        .filter((p) => p instanceof Material)
Function symbol, f(📦) → 📦, where the argument and output are a box labeled 'glTF'.

Made by Don McCurdy TypeDoc documentation Copyright 2021 under MIT license