import { AnimationNodeBase } from '@awayjs/renderer'; import { SkeletonDirectionalState } from '../states/SkeletonDirectionalState'; import { AnimatorBase } from '../AnimatorBase'; /** * A skeleton animation node that uses four directional input poses with an input direction to blend a linearly interpolated output of a skeleton pose. */ export class SkeletonDirectionalNode extends AnimationNodeBase { /** * Defines the forward configured input node to use for the blended output. */ public forward: AnimationNodeBase; /** * Defines the backwards configured input node to use for the blended output. */ public backward: AnimationNodeBase; /** * Defines the left configured input node to use for the blended output. */ public left: AnimationNodeBase; /** * Defines the right configured input node to use for the blended output. */ public right: AnimationNodeBase; constructor() { super(); this._pStateClass = SkeletonDirectionalState; } /** * @inheritDoc */ public getAnimationState(animator: AnimatorBase): SkeletonDirectionalState { return animator.getAnimationState(this); } }