@visactor/vrender-animate
Version:
This module provides a graph-based animation system for VRender.
35 lines (34 loc) • 1.8 kB
TypeScript
import type { EasingType } from '@visactor/vrender-core';
import { AStageAnimate } from '../../custom-animate';
export declare abstract class DisappearAnimateBase<T = any> extends AStageAnimate<T> {
protected webglCanvas: HTMLCanvasElement | null;
protected gl: WebGLRenderingContext | null;
protected program: WebGLProgram | null;
protected currentAnimationRatio: number;
protected animationTime: number;
constructor(from: null, to: null, duration: number, easing: EasingType, params: any);
onUpdate(end: boolean, ratio: number, out: any): void;
protected getAnimationTime(): number;
protected getDurationFromParent(): number;
protected initWebGL(canvas: HTMLCanvasElement): boolean;
protected createShaderProgram(vertexSource: string, fragmentSource: string): WebGLProgram | null;
protected createShader(type: number, source: string): WebGLShader | null;
protected setupWebGLState(canvas: HTMLCanvasElement): void;
protected createFullScreenQuad(): WebGLBuffer | null;
protected createTextureFromCanvas(canvas: HTMLCanvasElement): WebGLTexture | null;
protected setupVertexAttributes(): void;
protected createOutputCanvas(canvas: HTMLCanvasElement): {
canvas: HTMLCanvasElement;
ctx: CanvasRenderingContext2D;
} | null;
protected getShaderSources(): {
vertex: string;
fragment: string;
} | null;
protected applyWebGLEffect(canvas: HTMLCanvasElement): HTMLCanvasElement | null;
protected applyCanvas2DEffect(canvas: HTMLCanvasElement): HTMLCanvasElement | null;
protected supportsWebGL(): boolean;
protected supportsCanvas2D(): boolean;
release(): void;
protected afterStageRender(stage: any, canvas: HTMLCanvasElement): HTMLCanvasElement | void | null | false;
}