

Chapitre 2 : Les types de variables en Blueprint
Les variables sont les fondations de la programmation en Blueprint. Elles permettent de stocker, manipuler, et partager des informations au sein de vos scripts visuels. Bien comprendre leurs types et leurs usages est essentiel pour créer des algorithmes efficaces et optimiser votre code.
1. Qu’est-ce qu’une variable en Blueprint ?
Une variable est un conteneur permettant de stocker des données. Ces données peuvent être utilisées pour :
-
Suivre l'état d'un jeu (comme le score ou la position d'un joueur).
-
Stocker des informations temporaires nécessaires à l'exécution d'une logique (comme un multiplicateur de dégâts).
-
Partager des données entre différents Blueprints ou parties de votre jeu.
En Blueprint, chaque variable a :
-
Un type : Définit la nature des données qu'elle peut contenir (par exemple, un nombre, une chaîne de caractères, une position).
-
Un nom : Vous permet de l'identifier dans vos scripts.
-
Une portée : Définit où et comment elle peut être utilisée (locale, globale ou spécifique à un Blueprint).

Les principaux types de variables
2. Types de variables disponibles en Blueprint
Unreal Engine propose une variété de types de variables adaptés à différents usages. Voici les principaux, avec leurs détails, exemples pratiques, et cas d'utilisation.
a. Booléens (Boolean)

-
Description : Stockent une valeur binaire, soit vrai (True), soit faux (False).
-
Utilisation : Parfait pour représenter des états ou des conditions logiques.
-
Exemples :
-
EstEnVie ? : Détermine si le joueur est encore en vie.
-
LumièreAllumée ? : Active ou désactive une lumière dans la scène.
-
-
Bonnes pratiques : Privilégiez des noms commençant par des questions pour plus de clarté (ex. : EstOuvert?, AUneClé?).
b. Entiers (Integer)

-
Description : Représentent des nombres entiers (positifs ou négatifs).
-
Utilisation : Idéal pour compter ou suivre des valeurs discrètes.
-
Exemples :
-
ScoreJoueur : Compte le score accumulé.
-
NombreEnnemisRestants : Suivi du nombre d'ennemis actifs.
-
-
Limites : Ne permettent pas de stocker des valeurs avec des décimales (0.0 ou 52.47 par exemple, en Integer sera forcément 0 ou 52).
Exemple d'Algorythme Blueprints (Fictif)

Pour illustrer ces concepts, voici une image explicative. Sur le Graph ci-dessus, nous voyons deux nodes : "EventTick" et "ControleDeConduite", le script se lis de gauche à droite.
​
L'EventTick est un événement qui exécute le code à chaque "tick", c’est-à-dire à chaque rafraîchissement du jeu. On peut simplifier cela en le comparant aux FPS (images par seconde) de votre jeu. Concrètement, si votre jeu fonctionne à 60 FPS, l'EventTick exécutera le code 60 fois par seconde ! (Autant dire qu’il est très rapide !)
​
Ensuite, nous avons la fonction "ControleDeConduite", qui est appelée 60 fois par seconde si votre jeu tourne à 60 FPS. Jusqu’ici, rien de surprenant. Maintenant, examinons ce qui se passe à l’intérieur de cette fonction !

Nous observons ici que l'algorithme commence par un node violet, qui représente le point de départ de la fonction.
​
Le node "Branch" vérifie à chaque exécution (donc 60 fois par seconde dans notre exemple) si la variable "Accident?" est vraie ou fausse. Par défaut, cette variable est définie sur False (faux), ce qui signifie que la fonction continuera en exécutant une autre fonction appelée "Continuer", permettant au joueur de jouer normalement. (Ces fonctions sont fictives et servent uniquement d'exemple.)
​
Imaginons que cet algorithme provienne d’un jeu de course automobile, et qu’il ait pour rôle de vérifier si le joueur a eu un accident. Lorsque cela se produit, la variable rouge "Accident?" passe à True (vrai), déclenchée par un autre algorithme, et le Branch exécute alors ce qui se trouve sur sa branche True : une fonction dédiée à jouer une animation d'accident.
​
Une fois cette animation exécutée, un autre Branch vérifie la condition stockée dans la variable rouge "PersonnageEnVie?". Supposons que la fonction "Animationd'Accident" inflige des dégâts au joueur. Lorsque la vie du joueur atteint 0, un algorithme définit la variable "PersonnageEnVie?" sur False (faux).
​
Ainsi, si cette variable est True (le joueur est encore en vie), il peut continuer à jouer. Cependant, si la variable est False (le joueur n’a plus de vie), le Branch exécute alors la fonction "Recommencer", qui peut, par exemple, afficher un message demandant au joueur de redémarrer le niveau.
​
Encore une fois, cet algorithme est totalement fictif, mais il illustre bien la logique de programmation en Blueprints, qui s’effectue toujours de gauche à droite.
Prochain chapitre :
Sommaire de la formation :
Chapitre 1 : Introduction aux Blueprints
Présentation du code Blueprint et de son fonctionnement
Chapitre 2 : Les types de variables en Blueprint
Les different types de variables en Blueprints