VFX Forge - v1.0.0
    Preparing search index...

    Factory responsable de :

    • Enregistrer les classes d'effets disponibles.
    • Créer des instances d'effets à la demande.
    • Fournir des métadonnées sur les effets disponibles.
    • Valider les effets avant leur utilisation.
    • Gérer les dépendances (particleManager, environmentManager, etc.).
    const factory = new EffectFactory();
    factory.register('explosion', ExplosionEffect);
    const effect = factory.create('explosion');
    Index

    Constructors

    • Crée une instance d'EffectFactory

      Initialise la factory avec un registre d'effets vide et un conteneur de dépendances vide. Les classes d'effets doivent être enregistrées via register() et les dépendances configurées via setDependencies() avant de pouvoir créer des instances d'effets.

      Returns EffectFactory

    Properties

    dependencies: {}
    effectClasses: Map<any, any>
    effectInstances: Map<any, any>
    effectMetadata: Map<any, any>

    Methods

    • Crée une nouvelle instance d'un effet

      Parameters

      • effectName: string

        Nom de l'effet

      • options: any = {}

        Options d'initialisation (non utilisé actuellement)

      Returns any

      Instance de l'effet ou null

    • Nettoie toutes les ressources

      Returns void

    • Obtient la liste des effets disponibles

      Returns string[]

      Noms des effets

    • Obtient les métadonnées d'un effet

      Parameters

      • effectName: string

        Nom de l'effet

      Returns any

      Métadonnées ou null

    • Obtient tous les effets groupés par catégorie

      Returns any

      Effets groupés par catégorie

    • Obtient ou crée une instance singleton d'un effet Utile pour effets qui ne nécessitent qu'une seule instance globale

      Parameters

      • effectName: string

        Nom de l'effet

      Returns any

      Instance de l'effet ou null

    • Vérifie si un effet est disponible

      Parameters

      • effectName: string

        Nom de l'effet

      Returns boolean

      Disponibilité

    • Enregistre une classe d'effet

      Parameters

      • EffectClass: Function

        Classe de l'effet (non instanciée)

      • metadata: any = {}

        Métadonnées optionnelles

      Returns boolean

      Succès de l'enregistrement

    • Injecte les dépendances globales pour les effets Doit être appelé AVANT registerEffectClass pour que les effets puissent accéder aux dépendances lors de leur création

      Parameters

      • deps: any

        Dépendances { particleManager, environmentManager, etc. }

      Returns void

    • Désenregistre un effet

      Parameters

      • effectName: string

        Nom de l'effet

      Returns boolean

      Succès

    • Valide qu'un effet peut être utilisé dans le contexte actuel

      Parameters

      • effectName: string

        Nom de l'effet

      • context: any = {}

        Contexte (capabilities du système)

      Returns any

      { valid: boolean, reason: string }