mylingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
27 lines (26 loc) • 932 B
TypeScript
import { Disposable } from "@lincode/promiselikes";
import { Object3D, AnimationClip } from "three";
import { AnimationData } from "../../../api/serializer/types";
import EventLoopItem from "../../../api/core/EventLoopItem";
export type PlayOptions = {
crossFade?: number;
repeat?: boolean;
onFinish?: () => void;
};
export default class AnimationManager extends Disposable {
private clip?;
name: string;
private mixer;
private action?;
constructor(nameOrClip: string | AnimationClip, target: EventLoopItem | Object3D);
retarget(target: Object3D): AnimationManager;
dispose(): this;
get duration(): number;
private loadClip;
setTracks(data: AnimationData): void;
play({ crossFade, repeat, onFinish }?: PlayOptions): void;
stop(): void;
getPaused(): boolean | undefined;
setPaused(val: boolean): void;
update(seconds: number): void;
}