Unreal Engine est un moteur de jeux vidéo complet et facile d’utilisation. Il nous donne accès à plusieurs technologies. Ici, nous allons voir Niagara.
Table des matières
ToggleQu'est-ce que la technologie Niagara ?
Niagara est un système pour les effets visuels. Grâce à Niagara, les artistes techniques ont désormais la possibilité de créer eux-mêmes des fonctionnalités supplémentaires, sans avoir besoin de l’aide d’un programmeur. Ce système est incroyablement adaptable et flexible. Les débutants peuvent commencer par modifier les modèles ou les exemples de comportement, tandis que les utilisateurs avancés peuvent créer leurs propres modules personnalisés.
Composants principaux de Niagara :
Le système Niagara pour les effets visuels comporte quatre éléments essentiels :
- Systèmes
- Émetteurs
- Modules
- Paramètres
Systèmes :
Un système Niagara est comme une boîte magique qui renferme tous les outils nécessaires pour créer cet effet. À l’intérieur, vous trouverez divers éléments qui se combinent pour vous aider à obtenir le résultat final.
Vous avez la possibilité de personnaliser certains paramètres au niveau du système, ce qui influencera ensuite tous les éléments de cet effet.
Le tableau de bord Timeline de l’éditeur de système indique quels émetteurs sont inclus dans le système, et peut être utilisé pour gérer ces émetteurs.
Émetteurs :
Les émetteurs sont les endroits où les particules sont créées dans un système Niagara. Ils gèrent la naissance des particules, leur évolution dans le temps, ainsi que leur aspect et leur comportement.
L’émetteur est structuré en une pile. Cette pile contient plusieurs groupes, dans lesquels vous pouvez insérer des modules qui effectuent des tâches spécifiques. Voici les groupes disponibles.
Ce groupe spécifie le comportement d’un émetteur lors de sa création initiale sur le CPU. Il est utile pour définir les paramètres de départ et les valeurs par défaut.
Ce groupe détermine les modules de niveau émetteur qui se produisent à chaque image sur le CPU. Utilisez ce groupe pour spécifier quand les particules doivent continuer à apparaître à chaque image.
Ce groupe est appelé par particule sur chaque image. Ici, vous devrez spécifier tous les éléments qui doivent être modifiés image par image à mesure que les particules vieillissent. Par exemple, si la couleur des particules change au fil du temps. Ou si les particules sont influencées par des forces telles que la gravité, le bruit curl ou l’attraction ponctuelle. Vous pourriez même vouloir que les particules changent de taille au fil du temps.
Dans le groupe de gestion des événements, vous avez la possibilité de créer des événements qui sont générés par un ou plusieurs émetteurs et qui contiennent des données spécifiques. Ensuite, vous pouvez créer des événements d’écoute dans d’autres émetteurs qui déclenchent une réaction en réponse à cet événement généré.
Le groupe de rendu est le dernier groupe à configurer. Ici, vous pouvez personnaliser l’apparence de la particule et choisir un ou plusieurs moteurs de rendu pour vos particules. Vous avez le choix d’utiliser un moteur de rendu de maillage pour créer un modèle 3D comme base de vos particules, auquel vous pouvez appliquer un matériau. Sinon, vous pouvez opter pour un moteur de rendu de sprites et définir vos particules comme des sprites 2D. Il existe une variété de moteurs de rendu parmi lesquels vous pouvez expérimenter et choisir celui qui convient le mieux à vos besoins.
Modules :
Les modules constituent les éléments fondamentaux des effets dans Niagara. Vous assemblez les modules dans les groupes pour créer une pile. Les modules sont exécutés de manière séquentielle, de haut en bas.
Un module est essentiellement une boîte où vous effectuez des calculs. Vous entrez des données, vous les manipulez à l’intérieur du module, puis vous les renvoyez modifiées à la fin du processus.
Les modules sont créés en utilisant le langage HLSL, mais peuvent également être conçus visuellement à l’aide de nœuds dans un graphique. Vous pouvez y intégrer des fonctions, des entrées ou des paramètres. Il est même possible d’écrire du code HLSL en ligne en utilisant le nœud HLSL personnalisé dans le graphique.
En double-cliquant sur un module dans Niagara, vous pouvez observer les calculs qui s’y déroulent. Vous avez même la possibilité de copier et de créer vos propres modules. Par exemple, en examinant de plus près le module « Ajouter la vitesse », vous pourrez analyser le flux de données à l’intérieur.
Le script débute en récupérant les données d’entrée, à savoir la vitesse d’entrée et l’espace de coordonnées. Ensuite, il récupère la vitesse actuelle des particules ainsi qu’un facteur d’échelle spécifié. Ensuite, la vitesse d’entrée est mise à l’échelle, transformée dans l’espace de coordonnées approprié, puis ajoutée à la vitesse actuelle des particules. Une fois cette opération terminée, la nouvelle vitesse de la particule est enregistrée afin que tous les modules nécessitant des informations sur la vitesse plus tard dans le processus puissent les obtenir.
Tous les modules suivent cette méthodologie de base, même si certains peuvent avoir des calculs internes plus complexes.
Paramètres et types de paramètres :
Les paramètres dans une simulation Niagara sont une représentation abstraite des données. Chaque type de paramètre est assigné à une donnée spécifique pour déterminer sa signification. Il y a quatre types de paramètres :
- Primitive : Ce type de paramètre définit des données numériques de précision et de largeur de canal variables.
- Enum : Ce type de paramètre définit un ensemble fixe de valeurs nommées, et assume l’une des valeurs nommées.
- Structure : Ce type de paramètre définit un ensemble combiné de types Primitive et Enum.
- Interfaces de données : Ce type de paramètre définit les fonctions qui fournissent des données provenant de sources de données externes. Il peut s’agir de données provenant d’autres parties de UE4, ou de données provenant d’une application extérieure.
Pour ajouter un module de paramètre personnalisé à un émetteur, il suffit de cliquer sur l’icône Signe plus (+) et de choisir Définir directement un paramètre nouveau ou existant. Ensuite, un module Définir le paramètre sera ajouté à la pile. Il ne reste plus qu’à cliquer sur l’icône Signe plus (+) du module Définir le paramètre et de sélectionner Ajouter un paramètre pour définir un paramètre existant, ou Créer un nouveau paramètre pour en créer un nouveau.