En bref
- Une Material Parameter Collection stocke les paramètres scalar et vector dans un asset distinct.
- Un matériau peut référencer au maximum deux Material Parameter Collection différentes.
- Les valeurs d’une collection sont mises à jour de manière commune dans les matériaux qui l’utilisent.
- Les paramètres d’une collection peuvent être modifiés avec Blueprint ou animés par des keyframes dans Sequencer.
Ce que vous apprendrez dans ce guide
Si plusieurs matériaux d’une même scène doivent réagir à une valeur commune dans Unreal Engine, vous pouvez utiliser une Material Parameter Collection (MPC) plutôt que de modifier cette valeur séparément dans chaque instance de matériau. La collection stocke les paramètres scalar et vector dans un asset distinct des matériaux. Les matériaux qui y sont reliés partagent ainsi des valeurs communes ; lorsque vous modifiez une valeur de la collection, le changement se répercute sur les matériaux qui l’utilisent.
Dans ce guide, nous verrons étape par étape comment créer une collection, la relier au graphe d’un matériau et gérer ses valeurs avec Blueprint ou Sequencer. Un cas d’utilisation possible consiste à contrôler la valeur emissive de plusieurs matériaux d’une scène à l’aide d’un seul paramètre scalar. Cette approche facilite la modification des réglages communs, mais ne permet pas de gérer à elle seule toutes les propriétés de chaque matériau.
Prérequis
Dans Unreal Engine, utilisez Content Browser, Material Editor et Blueprint. Pour utiliser la collection dans un matériau, des connaissances de base sur la création de matériaux sont nécessaires. Les personnes qui souhaitent modifier le paramètre au fil du temps à l’aide d’une animation doivent également connaître les bases de Sequencer et de la création de matériaux. Le guide de référence consacré à Sequencer a été préparé pour Unreal Engine 4.27 ; vérifiez la compatibilité de l’interface et du workflow avec la version de votre projet.
Les sources ne mentionnent aucune condition particulière concernant le compte, aucun coût ni aucune exigence matérielle pour cette opération. Nous utiliserons le contrôle emissive dans l’exemple, mais vous pouvez aussi intégrer une autre valeur scalar ou vector à la collection en suivant la même méthode générale. Choisissez le nom du paramètre au moment de sa création et réutilisez ce même nom aux étapes suivantes. L’essentiel est de sélectionner la bonne collection dans le graphe du matériau et de relier le nœud Collection Parameter au paramètre visé dans le graphe.
Étape par étape : créer la collection et la relier à un matériau
Créez l’asset de collection. Dans Content Browser, faites un clic droit. Dans la section Create Advanced Asset, ouvrez le sous-menu Material et sélectionnez MaterialParameterCollection. Donnez à l’asset un nom qui décrit son contenu ; par exemple,
MPC_GlobalParamssi elle doit contenir des valeurs utilisées à l’échelle de la scène.Ajoutez un paramètre. Ouvrez l’asset en double-cliquant dessus. Créez un nouveau paramètre à l’aide du bouton Add Element (+) dans la section Scalar Parameters ou Vector Parameters. Ajoutez un paramètre scalar pour un contrôle à valeur unique, ou un paramètre vector si le contrôle nécessite une valeur vector. Choisissez un nom correspondant à sa fonction ; par exemple, vous pouvez appeler
EmissivePowerun paramètre scalar destiné à contrôler la puissance emissive. Définissez également sa valeur initiale dans ce panneau.Appelez la collection dans le graphe du matériau. Ouvrez un matériau et faites un clic droit dans la zone Material Graph, puis recherchez « collection ». Ajoutez le nœud Collection Parameter. Dans la liste déroulante Collection du Details Panel, sélectionnez la MPC que vous venez de créer, puis choisissez le paramètre ajouté dans la liste Parameter Name. Le matériau récupère alors la valeur correspondante depuis l’asset de collection.
Reliez le paramètre au calcul du matériau. Connectez la sortie du nœud Collection Parameter au graphe utilisé par la propriété du matériau que vous souhaitez contrôler. Par exemple, si vous voulez gérer la valeur emissive, utilisez le scalar de la collection dans le calcul emissive. La manière de réaliser cette connexion dépend du graphe de votre matériau ; l’exemple du guide de référence contrôle la valeur d’une surface emissive à l’aide de la collection.
Enregistrez et testez avec plusieurs matériaux. Enregistrez le matériau et attendez qu’il soit compilé. Utilisez également le nœud et le paramètre correspondants dans d’autres matériaux qui référencent la même collection. Modifiez ensuite la valeur dans l’asset de collection. Les matériaux liés à cette collection sont concernés par la mise à jour commune, ce qui réduit le besoin de modifier le même réglage séparément dans chaque Material Instance.
Contrôler les valeurs avec Blueprint et Sequencer
Pour modifier une valeur de collection pendant l’exécution, vous pouvez utiliser le nœud Set Scalar Parameter Value dans le Level Blueprint. Sélectionnez la collection et le paramètre concernés dans le nœud, puis définissez la valeur du paramètre selon le déroulement souhaité. Dans l’exemple officiel, des événements clavier sont reliés à ce nœud : les événements d’appui et de relâchement d’une touche peuvent définir des valeurs différentes. Il s’agit d’un exemple qui illustre le fonctionnement de la méthode ; dans un projet de production, les entrées doivent être configurées en fonction du système de contrôle propre au projet.
Si vous avez besoin d’une évolution dans le temps, cliquez sur le bouton + Track dans Sequencer et sélectionnez l’asset Material Parameter Collection. À l’aide du bouton + Parameter de la piste, ajoutez le paramètre auquel vous souhaitez appliquer une animation. Une keyframe est créée à la position temporelle courante pour ce paramètre. Vous pouvez modifier la valeur scalar sur la piste et créer des keyframes ; pour un paramètre vector, double-cliquez sur la keyframe afin d’ouvrir le sélecteur de couleur. Les matériaux utilisant la même collection peuvent ainsi évoluer via un paramètre commun, plutôt que par l’animation individuelle de leurs canaux de matériau.
Erreurs fréquentes et points de vigilance
La sélection d’une mauvaise collection dans le graphe du matériau ou une mauvaise correspondance du nom du paramètre dans la liste peut empêcher le contrôle commun attendu de fonctionner. Vérifiez d’abord la sélection du nœud Collection Parameter, puis sa connexion et la valeur du paramètre dans la collection. Un matériau peut référencer au maximum deux Material Parameter Collection différentes ; tenez compte de cette limite lors de l’organisation de la scène. Chaque collection peut contenir au maximum 1024 paramètres scalar et 1024 paramètres vector.
Modifier le nombre de paramètres dans une collection entraîne la recompilation des matériaux qui la référencent. Il est donc préférable de planifier les paramètres nécessaires à l’avance plutôt que de les ajouter et de les supprimer constamment, ce qui simplifie le workflow. Renommer un paramètre demande également une attention particulière du côté de Blueprint : les matériaux qui l’utilisent continuent de fonctionner, mais il faut réattribuer le nom du paramètre correspondant dans Blueprint.
La MPC doit être envisagée comme un moyen de distinguer les réglages propres à une instance de matériau des valeurs communes à l’échelle de la scène. Si chaque objet doit avoir une valeur différente, ne partez pas du principe qu’un paramètre commun se décline automatiquement par objet. L’intérêt de la collection est de transmettre une valeur partagée à plusieurs matériaux. Par ailleurs, le guide de référence indique que la mise à jour d’une valeur via une collection est plus efficace que le réglage séparé d’un grand nombre de paramètres de Material Instance différentes ; cette affirmation ne constitue pas une garantie de performances sur un matériel donné.
Quels avantages pour l’architecture et l’archviz ?
Dans les scènes de visualisation architecturale, regrouper autour d’un même paramètre les surfaces qui doivent partager un contrôle peut réduire les modifications répétitives pendant les itérations. Il est par exemple possible de gérer avec une collection une valeur emissive, une couleur ou une autre valeur scalar/vector commune à un groupe de matériaux de la scène ; la propriété utilisée dépend de la connexion établie dans le graphe du matériau. Avec Sequencer, les valeurs des paramètres peuvent être animées par keyframes sur la timeline ; dans Blueprint, elles peuvent être modifiées par des événements intégrés au workflow.
Il est toutefois utile de déterminer dès le début du projet quelles valeurs intégrer à la collection et quels matériaux y relier. Une modification du nombre de paramètres peut entraîner la recompilation des matériaux ; un changement de nom peut nécessiter des corrections supplémentaires dans les connexions Blueprint. Les sources ne mentionnent aucune exigence particulière en matière de licence ou de matériel. L’équipe projet doit vérifier le workflow Sequencer dans la version d’Unreal Engine utilisée et ne transférer vers la MPC que les valeurs qui nécessitent réellement un contrôle commun.
Étapes suivantes
Commencez par un petit test avec un seul paramètre scalar : reliez-le à deux matériaux différents, puis modifiez sa valeur dans la collection pour vérifier la mise à jour commune. Essayez ensuite de définir ce même paramètre via Blueprint ou de lui ajouter des keyframes dans Sequencer. Si vous avez besoin d’un paramètre vector, testez également le workflow de modification des keyframes avec le sélecteur de couleur.
Utilisez les noms des paramètres de manière cohérente dans le projet et vérifiez les connexions Blueprint avant de modifier un nom utilisé par Blueprint. À mesure que le nombre de matériaux ou la portée des paramètres augmente, organisez clairement le nombre et les objectifs des collections ; vérifiez qu’un même matériau ne dépasse pas la limite de deux collections.
Sources et licence
Ce guide est une adaptation originale de la documentation Unreal Engine d’Epic Games consacrée aux thèmes Material Parameter Collections, Material Parameter Collection Sequencer track et Material Parameter Expressions. Les informations de source indiquent que la licence est « libre » ; le type de licence n’étant pas précisé, les phrases de la source n’ont pas été reprises directement.
Sources
3 sourcesLes textes sources ne sont pas republiés ; les courtes citations sont signalées, le reste est notre propre résumé et commentaire.
Pour les bureaux d’architecture et les équipes de visualisation en Turquie, le principal intérêt pratique de la MPC est d’éviter de devoir répéter le même réglage de scène dans de nombreux matériaux. Elle peut rendre les modifications plus cohérentes, en particulier dans les scènes nécessitant un contrôle commun de la couleur ou de la valeur emissive ; les options Sequencer et Blueprint permettent également de s’adapter à différents workflows de présentation.
Cela dit, cette fonctionnalité ne permet pas à elle seule d’accélérer le matériel de rendu. Planifier les paramètres et les matériaux liés dès le départ permet de limiter les recompilations nécessaires et les risques liés au changement de nom dans Blueprint. Comme les sources ne précisent aucune condition de coût ou de matériel, il est judicieux pour les équipes de tester la compatibilité de Sequencer avec leur propre version d’Unreal Engine.
Questions fréquentes
À quoi sert une Material Parameter Collection dans Unreal Engine ?
Elle stocke les valeurs scalar et vector dans un asset distinct des matériaux. Plusieurs matériaux qui référencent cette collection peuvent recevoir des mises à jour de valeurs communes.
Combien de Material Parameter Collection un matériau peut-il utiliser ?
Un matériau peut référencer au maximum deux Material Parameter Collection différentes.
Les valeurs d’une Material Parameter Collection peuvent-elles être animées dans Sequencer ?
Oui. Vous pouvez ajouter une piste de collection dans Sequencer, sélectionner un paramètre et modifier ses valeurs à l’aide de keyframes.



