123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- import type { Nullable } from "../types";
- import type { Scene } from "../scene";
- import type { BaseTexture } from "../Materials/Textures/baseTexture";
- import { Vector4 } from "../Maths/math.vector";
- import type { Effect } from "../Materials/effect";
- /**
- * Interface for baked vertex animation texture, see BakedVertexAnimationManager
- * @since 5.0
- */
- export interface IBakedVertexAnimationManager {
- /**
- * The vertex animation texture
- */
- texture: Nullable<BaseTexture>;
- /**
- * Gets or sets a boolean indicating if the edgesRenderer is active
- */
- isEnabled: boolean;
- /**
- * The animation parameters for the mesh. See setAnimationParameters()
- */
- animationParameters: Vector4;
- /**
- * The time counter, to pick the correct animation frame.
- */
- time: number;
- /**
- * Binds to the effect.
- * @param effect The effect to bind to.
- * @param useInstances True when it's an instance.
- */
- bind(effect: Effect, useInstances: boolean): void;
- /**
- * Sets animation parameters.
- * @param startFrame The first frame of the animation.
- * @param endFrame The last frame of the animation.
- * @param offset The offset when starting the animation.
- * @param speedFramesPerSecond The frame rate.
- */
- setAnimationParameters(startFrame: number, endFrame: number, offset: number, speedFramesPerSecond: number): void;
- /**
- * Disposes the resources of the manager.
- * @param forceDisposeTextures - Forces the disposal of all textures.
- */
- dispose(forceDisposeTextures?: boolean): void;
- /**
- * Get the current class name useful for serialization or dynamic coding.
- * @returns "BakedVertexAnimationManager"
- */
- getClassName(): string;
- }
- /**
- * This class is used to animate meshes using a baked vertex animation texture
- * @see https://doc.babylonjs.com/features/featuresDeepDive/animation/baked_texture_animations
- * @since 5.0
- */
- export declare class BakedVertexAnimationManager implements IBakedVertexAnimationManager {
- private _scene;
- private _texture;
- /**
- * The vertex animation texture
- */
- texture: Nullable<BaseTexture>;
- private _isEnabled;
- /**
- * Enable or disable the vertex animation manager
- */
- isEnabled: boolean;
- /**
- * The animation parameters for the mesh. See setAnimationParameters()
- */
- animationParameters: Vector4;
- /**
- * The time counter, to pick the correct animation frame.
- */
- time: number;
- /**
- * Creates a new BakedVertexAnimationManager
- * @param scene defines the current scene
- */
- constructor(scene?: Nullable<Scene>);
- /** @internal */
- _markSubMeshesAsAttributesDirty(): void;
- /**
- * Binds to the effect.
- * @param effect The effect to bind to.
- * @param useInstances True when it's an instance.
- */
- bind(effect: Effect, useInstances?: boolean): void;
- /**
- * Clone the current manager
- * @returns a new BakedVertexAnimationManager
- */
- clone(): BakedVertexAnimationManager;
- /**
- * Sets animation parameters.
- * @param startFrame The first frame of the animation.
- * @param endFrame The last frame of the animation.
- * @param offset The offset when starting the animation.
- * @param speedFramesPerSecond The frame rate.
- */
- setAnimationParameters(startFrame: number, endFrame: number, offset?: number, speedFramesPerSecond?: number): void;
- /**
- * Disposes the resources of the manager.
- * @param forceDisposeTextures - Forces the disposal of all textures.
- */
- dispose(forceDisposeTextures?: boolean): void;
- /**
- * Get the current class name useful for serialization or dynamic coding.
- * @returns "BakedVertexAnimationManager"
- */
- getClassName(): string;
- /**
- * Makes a duplicate of the current instance into another one.
- * @param vatMap define the instance where to copy the info
- */
- copyTo(vatMap: BakedVertexAnimationManager): void;
- /**
- * Serializes this vertex animation instance
- * @returns - An object with the serialized instance.
- */
- serialize(): any;
- /**
- * Parses a vertex animation setting from a serialized object.
- * @param source - Serialized object.
- * @param scene Defines the scene we are parsing for
- * @param rootUrl Defines the rootUrl to load from
- */
- parse(source: any, scene: Scene, rootUrl: string): void;
- }
|