Search Results for

    Show / Hide Table of Contents

    Singleton


    DÉFINITION :
    Le Singleton est un patron de conception de création qui s’assure de l’existence d’un seul objet de son genre et fournit un unique point d’accès vers cet objet.

    Si vous souhaitez créer un Singleton indépendant de Unity, il vous suffit d'hériter de Singleton<T>.

    Singleton Unity

    Dans la plupart des cas, vous souhaiterez faire interagir votre Singleton avec la scène et hériter de MonoBehaviour. Pour ce faire, héritez de SingletonBehaviour<T>. Votre script se créera de lui-même dès son premier accès.

    Configuration avancée

    Vous pouvez configurer votre Singleton via l'inspecteur :

    • Créez un prefab dans votre dossier Assets ;
    • Ajoutez-y votre Singleton et configurez-le ;
    • Ouvrez l'outil Tools > GG-Library > Manage Singletons ;
    • Cochez votre Singleton.

    Votre Singleton sera automatiquement instancié au lancement du jeu. Exemple avec le Singleton LoadingScreen :

    SingletonBehaviour usage example

    Singleton contextuel

    L'utilisation de Singleton est fantastique, mais parfois, on veut accéder à un objet uniquement dans une scène spécifique sans l'emmener sur d'autres... (exemple: HUD)

    Un équivalent que vous pouvez hériter est CachedBehaviour<T>, dont l'existence se limite à la scène. Il vous faudra donc ajouter votre script manuellement dans la scène.

    Note

    Unity étant thread-safe, il n'est pas nécessaire d'utiliser de lock, sémaphore ou mutex comme cela est parfois conseillé. Sauf si... 😤 sauf si vous vous la jouez ECS ?? Ralph's gone Turbo? - Wreck It Ralph

    • Edit this page
    In this article
    Back to top Generated by DocFX