JULIEN GRIMARD
SYSTÈME D'ÉCLAIRAGE
Pour Equilibrium, nous voulions que l'éclairage, le post-process, ainsi que les textures et la posture du personnage principal évoluent à mesure que le joueur progresse pour représenter la progression de l'état mental de notre personnage.
J'ai aidé notre éclairagiste dans la création d'un blueprint qui anime cette évolution progressivement sur 10 secondes à chaque fois que le joueur active une interaction importante dans le jeu.
Nous avions beaucoup de variables à faire évolution, la fin du blueprint semble donc un peu compliquée, mais le principe utilisé est assez simple, permet facilement l'ajout de variables supplémentaires et n'impacte pas la performance du jeu.
Je commence par aller chercher notre personnage principal et lui créer des Instances de ses Matériaux crée par un de nos artistes. Ces Material Instances serviront à faire évoluer les Matériaux de notre personnage.
Le système fonctionne avec un Timeline pour animer l'éclairage. Je détermine donc le Play Rate du Timeline en fonction du temps voulu pour l'animation à chaque Interaction importante.
J'attache ensuite un Event créé par notre programmeurs pour les Interactions à un Custom Event qui s'active à chaque fois que le joueur clique sur une Interaction importante.
J'ai aussi créé une variable Backlog qui s'assure de jouer l'animation jusqu'au bout si un joueur active une deuxième Interaction importante avant la fin de l'animation de l'Interaction précédente en arrêtant l'animation uniquement quand le Backlog est à 0.
La timeline contient deux courbes:
- Une Event Track qui envoit une alerte pour arrêter l'animation à la fin d'une Interaction.
- Une Float Track qui anime une variable entre 0 et 1 qui sera utilisée pour ajuster les valeurs des différents systèmes.
Vient finalement une série de Lerp qui utilise la valeur de la Float Track pour ajuster les différentes valeurs du jeu, gardés dans une Structure de Variables, entre les valeurs de début de jeu et les valeurs de fin de jeu.