import { AnimationNodeBase } from '@awayjs/renderer'; import { SkeletonDifferenceState } from '../states/SkeletonDifferenceState'; import { AnimatorBase } from '../AnimatorBase'; /** * A skeleton animation node that uses a difference input pose with a base input pose to blend a linearly interpolated output of a skeleton pose. */ export class SkeletonDifferenceNode extends AnimationNodeBase { /** * Defines a base input node to use for the blended output. */ public baseInput: AnimationNodeBase; /** * Defines a difference input node to use for the blended output. */ public differenceInput: AnimationNodeBase; /** * Creates a new SkeletonAdditiveNode object. */ constructor() { super(); this._pStateClass = SkeletonDifferenceState; } /** * @inheritDoc */ public getAnimationState(animator: AnimatorBase): SkeletonDifferenceState { return animator.getAnimationState(this); } } export default SkeletonDifferenceNode;