La programmation en blueprints d’Unreal est assez spéciale, mais je dois dire que, en tant que chef de projet, si j’avais vu un de mes programmeurs sortir un truc comme ce que j’ai vu aujourd’hui, je lui faisais bouffer son clavier en lui hurlant ma façon de penser. En flamand !
En fait non, j’aurais rien fait du tout, parce que les informaticiens fonctionnent tous comme ça. Pareils que des gnomes : complètement cinglés mais de temps en temps il te sortent une armure à vapeur tu te demandes comment.
Voici généralement comment ça se passe. On récupère une variable basée sur une structure

et on décompose la structure pour accéder à ses composants

Aujourd’hui, puisque je n’arrive pas à débugger le système de skills, je m’apprête à tout jeter à la poubelle et recommencer de zéro, en appliquant le principe que j’ai en tête depuis longtemps : supprimer les points/barres de vie et de mana pour les remplacer par des effets visuels tels qu’aberration chromatique, désaturation et autres modifications de couleurs.
J’ai donc ajouté à mon personnage un post process component, ce qui est bien pratique car j’ai accès à tous les paramètres traditionnellement attribués à un volume de postprocessing, directement sur mon personnage. Du pur bonheur, je vais pouvoir créer tous les effets visuels que je souhaite pour informer le joueur de l’état de ses ressources, vie, énergie, stamina, rage, etc. sans que quiconque d’autre que le joueur ne le voie.
Là où ça se corse, c’est quand je veux manipuler les éléments de ce post process component. Pour commencer, je dois récupérer une variable settings. Je ne sais pas pourquoi, mais je ne peux pas accéder directement au éléments individuels.
J’ai trouvé ce truc des Settings complètement par hasard, mais je ne peux pas les scinder pour accéder à leurs éléments : je dois passer par un Set Members in PostProcessSettings.
Et comment tu veux que je le sache ?
C’est pas possible d’être merdeux à ce point-là, sans déconner, faut fouiller le net pour trouver des infos plus ou moins intelligibles écrites par des types plus ou moins informés et plus ou moins condescendants. C’est d’un pénible !
Soit, une fois que tu as sélectionné dans tous les paramètres enfin accessibles du Set Members in PostProcessSettings celui que tu veux, il faut l’appliquer, ok.

Et ça ne marche toujours pas.
Crévindju !
Tu sais pourquoi ?
Parce que pour mes tests j’ai spécifié une valeur et n’ai donc pas laissé la valeur par défaut. Du coup, il n’applique pas la modification du code. Il a fallu, genre “je pousse sur tous les boutons et je vois ce que ça donne” que je remette la variable par défaut et, miracle, ça fonctionne enfin !
L’informatique, c’est beaucoup trop sérieux pour la laisser aux mains des informaticiens.