Les expressions de matériau et les fonctions de matériau sont les blocs de construction permettant de créer des matériaux entièrement fonctionnels dans l'Unreal Engine. Chaque expression ou fonction est un nœud autonome dans le graphique de matériau. Ces nœuds exécutent de petits extraits de code HLSL dans leurs entrées et génèrent les résultats.
Cette page présente les différentes façons d'insérer des expressions de matériau et des fonctions dans un graphique de matériau.
Expressions de matériau
Chaque nœud d'expression de matériau contient un petit ensemble d'instructions HLSL qui permet d'effectuer une tâche très spécifique dans le matériau. Les matériaux sont créés en combinant des expressions et des fonctions pour atteindre le résultat visuel souhaité.
Par exemple, pour modifier l'échelle d'une texture sur un maillage, vous pouvez utiliser un nœud Multiplie. En multipliant une valeur constante par les coordonnées de texture d'un matériau, vous pouvez changer l'échelle de la texture.
Lorsque la valeur de multiplication passe de 1 à 3, la texture est appliquée trois fois sur la surface au lieu d'une seule fois.
Il s'agit d'un élément de logique de matériau simple, mais polyvalent. La combinaison de petits réseaux de nœuds comme celui-ci permet de créer des effets de surface très sophistiqués.
Différences entre les expressions et les fonctions
À la différence des expressions de matériau et les fonctions, les expressions de matériau sont créées directement dans le code source du moteur, alors que les fonctions de matériau existent en tant que ressources modifiables dans le navigateur de contenu.
Expressions de matériau
Les expressions de matériau sont des bouts de code statiques qui ne peuvent faire que ce qu'ils sont programmés pour. Un nœud Multiplier est programmé pour multiplier deux valeurs entre elles. Le seul moyen de modifier son utilité est de la modifier dans le code source. Il y avait quatre expressions de matériau dans l'exemple précédent :
Constante : Contient une seule valeur numérique (float).
Multiplier : multiplie la commande A et la commande B et génère le produit.
Coordonnées de texture : génère les coordonnées de texture UV du matériau sous la forme d'une valeur vectorielle à deux canaux.
Échantillon de texture : référence une texture d'image et génère la ou les valeurs de couleur de cette texture.
Fonctions de matériau
Les fonctions de matériau sont plus dynamiques, car vous pouvez les configurer pour qu'elles effectuent n'importe quel type de calcul. Vous pouvez créer et modifier des fonctions de matériau sans avoir à modifier le code source.
Si vous double-cliquez sur un nœud de fonction de matériau, l'éditeur de fonction de matériau s'ouvre. Dans une fonction de matériau, vous trouverez un graphique de nœud autonome constitué d'expressions de matériau.
La fonction de matériau CameraDepthFade contient le graphique de matériau illustré à droite.
Les fonctions de matériau permettent de condenser une logique de matériau compliquée en un seul nœud facile à lire qui peut être utilisé dans plusieurs matériaux. Les fonctions sont un bon moyen d'empaqueter des graphiques de matériau répétitifs pour que d'autres membres de l'équipe les partagent et les réutilisent.
Placement d'expressions de matériau
Il existe quatre façons d'insérer des expressions de matériau dans le graphique de matériau.
Glisser-déposer depuis la palette
La palette est un panneau latéral repliable situé sur le côté droit de la fenêtre de l'éditeur de matériaux. Cliquez sur Palette pour agrandir le panneau s'il n'est pas visible.
Pour que la palette reste visible à tout moment, cliquez sur l'icône de la broche.
Cliquez à nouveau sur la broche pour désépingler la palette. Lorsqu'elle est désépinglée, la palette se réduit après chaque action.
Recherche dans la palette
La palette contient une liste de toutes les expressions de matériau et fonctions de matériau disponibles dans l'UE5. Elles sont classées en catégories en fonction de leur usage général.
Vous pouvez parcourir la palette en saisissant une requête dans la barre de recherche. Le filtre de recherche se met à jour progressivement à mesure que vous saisissez du texte et met automatiquement en évidence la correspondance la plus proche.
Le menu Catégorie permet de filtre les types de nœuds qui sont visibles dans la palette.
Sélectionnez Expressions pour n'afficher que les expressions de matériau dans la palette.
Sélectionnez Fonctions pour n'afficher que les fonctions de matériau et masquer les expressions.
Toutes les fonctions et expressions de matériau sont visibles par défaut.
Insérer des expressions et des fonctions depuis la palette
Vous pouvez glisser n'importe quelle expression de matériau ou fonction depuis la palette dans votre graphique de matériau.
Faites un clic gauche sur le nom d'une expression de matériau dans la palette et faites-le glisser dans le graphique de matériau en maintenant le bouton gauche de la souris enfoncé.
Relâchez le bouton gauche de la souris et l'expression de matériau est insérée au niveau du pointeur.
Menu contextuel du clic droit
Vous pouvez aussi ajouter des nœuds de matériau à votre graphique depuis le menu du clic droit. À l'instar de la palette, le menu clic droit contient une liste structurée de toutes les expressions et fonctions de matériau. Le menu contextuel de clic droit comporte une barre de recherche, mais il ne permet pas de filtrer les expressions ou les fonctions.
Faites un clic droit n'importe où sur l'arrière-plan du graphique de matériau.
Parcourez les catégories ou saisissez une requête dans la barre de recherche pour trouver une expression ou une fonction.
Faites un clic gauche sur le nom d'une expression de matériau ou d'une fonction pour la placer dans votre graphique.
Vous pouvez également appuyer sur la touche Entrée pour insérer l'expression de matériau actuellement en surbrillance bleue. Utilisez les flèches haut et bas pour effectuer une sélection dans la liste ou affiner votre recherche.
Faire glisser du contenu depuis une broche d'entrée ou de sortie
Vous pouvez également accéder au menu contextuel en faisant un clic gauche et en faisant glisser un lien depuis n'importe quelle broche d'entrée ou de sortie sur un nœud existant de votre graphique. Relâchez le bouton gauche de la souris n'importe où dans le graphique pour afficher le menu contextuel. Utilisez la barre de recherche ou parcourez les catégories pour trouver et faire apparaître un nœud. L'avantage de cette méthode est que la fonction ou l'expression de matériau est déjà connectée correctement au moment de l'apparition, ce qui vous épargne une étape.
Raccourcis clavier
Il existe un certain nombre de raccourcis clavier qui permettent d'insérer rapidement des expressions de matériau courantes. Pour insérer une expression de matériau, maintenez les touches d'un raccourci clavier enfoncées et faites un clic gauche n'importe où dans le graphique de matériau.
Ce tableau illustre les raccourcis clavier par défaut de l'expression de matériau.
| Touche de raccourci clavier | Expression de matériau |
|---|---|
A | Ajouter une expression de matériau |
B | Expression de matériau Bump Offset |
1 | Expression du matériau Constante |
2 | Expression du matériau Constant2Vector |
3 | Expression de matériau Constant3Vector |
4 | Expression de matériau Constant4Vector |
D | Expression de matériau Diviser |
I | Expression de matériau Si |
L | Expression de matériau Interpolation linéaire |
F | Expression de matériau Fonction de matériau |
M | Expression Multiplier |
N | Expression Normaliser |
O | Expression Un moins |
P | Expression Panoramique |
E | Expression Puissance |
R | Expression Réflexion de vecteur WS |
S | Expression Paramètre scalaire |
S | Expression Échantillon de texture |
U | Expression Coordonnées de texture |
V | Expression Paramètre vectoriel |
Vous pouvez modifier les raccourcis clavier d'une expression de matériau en accédant à Édition > Préférences de l'éditeur > Raccourcis clavier > Éditeur de matériau - Nœuds d'apparition.
Placement de fonctions de matériau
Dans la plupart des cas, vous utiliserez les mêmes méthodes que ci-dessus pour placer des fonctions de matériau dans votre graphique. La palette et le menu du clic droit fonctionnent de la même manière pour les fonctions de matériau que pour les expressions.
Il existe une autre façon de placer des fonctions de matériau dans un graphique.
Placement de fonctions de matériau à partir du navigateur de contenu
Une particularité exclusive aux fonctions de matériau est que vous pouvez également les faire glisser depuis le navigateur de contenu et les déposer directement dans votre matériau.
Trouvez la fonction de matériau que vous souhaitez utiliser dans le navigateur de contenu, puis faites un clic gauche sur la ressource et faites-la glisser dans le graphique de matériau. Vous pouvez accéder au navigateur de contenu à partir du tiroir à contenu situé en bas de l'Éditeur de matériau ou à partir de la fenêtre principale de l'éditeur de l'UE5.
Pour trouver les fonctions de matériau dans le navigateur de contenu, vous devez regarder dans le dossier Engine, qui n'est pas visible par défaut.
Pour afficher le dossier Engine, cliquez sur l'icône Paramètres sur le côté droit du navigateur de contenu et cochez Afficher le contenu du moteur.
Les fonctions de matériau se trouvent dans le navigateur de contenu, dans le chemin Tous > Moteur > Contenu > Fonctions.
Connexion de nœuds de matériau
Suivez les étapes suivantes pour relier deux nœuds dans votre graphique de matériau.
Cliquez avec le bouton gauche de la souris et faites glisser un lien depuis une broche d'entrée ou de sortie du premier nœud.
Relâchez le bouton gauche de la souris sur une broche du deuxième nœud.
Pour supprimer un lien maintenez la touche Alt enfoncée et cliquez sur le lien entre deux nœuds. Vous pouvez également cliquer sur le lien et appuyer sur la touche Suppr.
On peut déplacer un lien d'une broche à l'autre. Maintenez Ctrl enfoncé et cliquez sur la connexion que vous souhaitez déplacer, puis faites-la glisser vers une autre entrée ou sortie.
Conclusion
Les fonctions et expressions de matériau sont les blocs de construction principaux des matériaux de l'UE5. Le moteur comprend des centaines de nœuds de matériau, chacun conçu pour stocker un type de données spécifique ou exécuter un ensemble d'instructions HLSL. Vous constaterez probablement que vous utilisez très fréquemment un petit nombre de nœuds. Par exemple, les expressions de matériau avec les raccourcis clavier documentés ci-dessus sont essentielles à la création de matériau dans l'UE5.
Les fonctions et les expressions de matériau disposent généralement d'infobulles qui résument leur objectif. La plupart sont documentées sur la page Référence des matériaux.
Les expressions de matériau étant souvent du code HLSL pur, vous pouvez également consulter la documentation officielle de Microsoft sur HLSL pour plus d'informations techniques.