Dernières actualités
Guide MoGraph de Cinema 4D : Cloner, distribution et performancesRéglages de caméra et de rendu architectural dans Blender : guide pas à pasOptions d’affichage d’Archicad 29 : guide des réglages du modèle et de l’écranCréer des dessins au trait à partir de scènes architecturales avec Blender Line ArtGuide World Partition d’Unreal Engine : organiser les grandes cartes avec Data LayersCréer une animation architecturale dans Blender avec des keyframes et des driversContrôler toute une scène avec les Material Parameter Collections dans Unreal EngineFiltres de phases Revit : bien choisir pour les vues de rénovationComment configurer le Runtime Virtual Texturing dans Unreal Engine ?Guide Blender Voxel Remesh : taille des voxels et géométrie
TutorielsUnreal Engine

Contrôler toute une scène avec les Material Parameter Collections dans Unreal Engine

Suivez pas à pas le workflow des Material Parameter Collections présenté dans la documentation d’Unreal Engine 4.27. Ce guide explique comment définir une valeur de matériau commune, l’utiliser dans un matériau et la modifier au fil du temps avec Blueprint.

Visualisation d’un intérieur contemporain aux couleurs changeantes, évoquant le contrôle partagé des matériauxImage IA
Image d’illustration générée par IA.Image : 3dsınıfı / FCA AI

En bref

  1. Une Material Parameter Collection stocke des paramètres scalaires et vectoriels accessibles à plusieurs matériaux.
  2. Une collection peut contenir jusqu’à 1024 paramètres scalaires et 1024 paramètres vectoriels.
  3. Un matériau peut référencer jusqu’à deux Material Parameter Collections différentes.
  4. Dans Blueprint, il est possible de modifier une valeur avec Set Scalar Parameter Value et Timeline.

Ce que vous apprendrez dans ce guide

Dans Unreal Engine, au lieu de modifier séparément une valeur dans de nombreux matériaux de la scène, vous pouvez la définir dans une collection commune. Une Material Parameter Collection (MPC) regroupe des paramètres scalaires et vectoriels accessibles aux matériaux. Ainsi, modifier une valeur dans la collection se répercute sur tous les matériaux qui l’utilisent.

Dans ce guide, nous allons suivre l’exemple de la documentation d’Unreal Engine 4.27 pour créer une MPC. Nous utiliserons ensuite le paramètre scalaire de la collection pour contrôler la saturation d’un matériau simple, puis nous ferons en sorte que sa valeur change pendant le jeu à l’aide de Blueprint et de Timeline. Cet exemple montre comment gérer une propriété de matériau depuis un point de contrôle commun. La même approche peut également servir pour des valeurs d’effets à l’échelle d’un niveau, comme la neige, la destruction ou l’humidité, mentionnées dans la documentation.

Prérequis

  • Logiciel et version : ce guide s’appuie sur le workflow présenté dans la documentation d’Unreal Engine 4.27 d’Epic Games. Ne partez pas du principe que les menus et l’interface sont identiques dans d’autres versions.

  • Contenu du projet : il vous faut un projet Unreal Engine, un matériau et des objets auxquels l’appliquer.

  • Étape Blueprint : pour modifier la valeur pendant le jeu, utilisez le Level Blueprint. Vous pouvez ignorer cette étape si vous souhaitez uniquement tester la collection et sa connexion au matériau.

  • Compte et matériel : la documentation source ne précise aucun compte ni configuration matérielle requis pour cette opération.

1. Créer une Material Parameter Collection

Dans le Content Browser, faites un clic droit pour ouvrir le menu de création. Dans la section Materials & Textures, sélectionnez Material Parameter Collection. Donnez un nom explicite à l’asset créé ; l’exemple d’Epic utilise MPC_Global_Material_Prams.

Double-cliquez sur la collection pour l’ouvrir. À la ligne Scalar Parameters, cliquez sur le bouton d’ajout pour créer un paramètre scalaire, puis nommez-le Global_Desaturation. Laissez sa valeur par défaut à 0.0. Un paramètre scalaire contient une seule valeur numérique, tandis qu’une collection peut aussi stocker des paramètres vectoriels. Dans cet exemple, nous n’utiliserons qu’un paramètre scalaire.

Il est important de choisir des noms de paramètres cohérents dès le départ. Selon la documentation d’Epic, renommer un paramètre peut laisser fonctionnelle la connexion au matériau qui l’utilise ; toutefois, il peut être nécessaire de réorganiser la partie Blueprint qui fait référence à ce paramètre par son nom.

2. Relier la valeur de la collection au matériau

Créez un nouveau matériau ou ouvrez-en un existant. L’exemple utilise un matériau simple avec des nœuds de paramètres pour la couleur de base, la métallisation et la rugosité. En reliant ces nœuds aux entrées correspondantes du matériau, il sera plus facile de modifier la couleur de base à l’étape suivante.

Ajoutez l’expression Desaturation au graphe du matériau. Faites ensuite glisser l’asset MPC depuis le Content Browser vers le graphe : un nœud donnant accès au paramètre de la collection est alors ajouté. Effectuez les connexions dans l’ordre suivant :

  1. Reliez la sortie de la couleur de base à la première entrée du nœud Desaturation.

  2. Reliez la sortie du paramètre de la collection à l’entrée Fraction de Desaturation.

  3. Reliez la sortie de Desaturation à l’entrée Base Color du nœud principal du matériau.

  4. Cliquez sur Apply dans le matériau.

Après avoir appliqué le matériau aux objets de la scène, ouvrez la MPC et faites varier Global_Desaturation entre 0 et 1. La modification de cette valeur affecte l’apparence des objets qui utilisent ce matériau. Dans l’exemple source, les objets bleus lorsque la valeur est à 0 deviennent blancs lorsqu’elle atteint 1.

3. Modifier la valeur avec Blueprint et Timeline

Modifier la valeur manuellement suffit pour vérifier la connexion. Pour déclencher l’effet pendant le jeu, ouvrez le Level Blueprint. Dans l’exemple d’Epic, les éléments nécessaires sont un événement d’appui sur le bouton gauche de la souris, un Timeline, un nœud Set Scalar Parameter Value et une variable float nommée Des.

Dans le nœud Set Scalar Parameter Value, sélectionnez la MPC à utiliser dans l’entrée Collection. Dans le champ Parameter Name, choisissez le paramètre Global_Desaturation. Le Blueprint peut ainsi mettre à jour la bonne valeur de la collection.

Ouvrez le Timeline et ajoutez une Float Track. Créez deux clés sur la piste : la première a pour temps et valeur 0, la seconde a pour temps et valeur 1. Vous pouvez nommer la piste Des_Amount. Dans le graphe Blueprint, reliez la sortie du Timeline au flux qui définit la valeur de la collection ; faites progresser l’effet lorsque le bouton de la souris est enfoncé et revenir à son état initial lorsque le bouton est relâché. L’exemple source montre que les matériaux deviennent gris tant que le bouton gauche de la souris est maintenu, puis retrouvent leurs couleurs d’origine lorsqu’il est relâché.

Compilez le graphe avec Compile et lancez le projet. Si rien ne change, vérifiez d’abord que le matériau est appliqué aux bons objets, que le graphe du matériau a été compilé et que la collection et le nom du paramètre sont correctement sélectionnés dans Blueprint.

Quels avantages pour l’architecture et la visualisation ?

Dans les scènes architecturales, gérer une propriété de matériau commune via un paramètre partagé plutôt que de l’appliquer séparément à de nombreux objets est particulièrement pratique pour les valeurs qui doivent changer à l’échelle du niveau. Les effets de neige, de destruction et d’humidité donnés en exemple par Epic sont des cas où plusieurs matériaux peuvent utiliser les mêmes données. L’exemple de saturation présenté ici constitue un point de départ simple pour comprendre comment établir les connexions.

Cette méthode nécessite de suivre les matériaux qui font référence à la collection dans la scène. Chaque matériau peut référencer jusqu’à deux MPC différentes ; une collection peut, quant à elle, contenir 1024 paramètres scalaires et 1024 paramètres vectoriels. Modifier le nombre de paramètres d’une collection entraîne la recompilation des matériaux qui y font référence. Il est donc utile de planifier la structure de la collection en amont si vous prévoyez d’ajouter de nombreux paramètres. La documentation précise également que mettre à jour les valeurs d’une MPC est plus efficace que de régler les paramètres séparément sur de nombreuses instances de matériau.

Erreurs fréquentes

  • Ne pas faire correspondre les noms de paramètres : le nom sélectionné dans le matériau ou dans Blueprint doit être identique à celui de la collection. Un renommage peut rompre la connexion Blueprint.

  • Relier les mauvais nœuds : dans cet exemple, la sortie de la collection va à l’entrée Fraction, et la sortie de Desaturation à l’entrée Base Color.

  • Oublier de compiler les modifications : cliquez sur Apply pour le matériau et sur Compile pour le Level Blueprint.

  • Tout regrouper sans limite dans une seule collection : tenez compte du nombre maximal de paramètres par collection et de la limite de deux collections par matériau. Gardez également à l’esprit qu’augmenter le nombre de paramètres par la suite peut nécessiter une recompilation des matériaux.

Pour aller plus loin

Commencez par vérifier la connexion avec un seul paramètre de collection et un seul matériau. Ajoutez ensuite d’autres matériaux utilisant la même MPC afin d’observer l’étendue d’une modification de valeur unique. Côté Blueprint, prenez l’approche avec Timeline de l’exemple comme point de départ et définissez des paramètres adaptés aux besoins de la scène. Donnez aux paramètres des noms explicites et gardez une trace, dans le projet, des collections auxquelles les matériaux sont liés.

Source et licence

Ce guide est une adaptation en turc de la documentation Material Parameter Collections publiée par Epic Games pour Unreal Engine 4.27. La source est indiquée comme libre de licence dans les informations de contenu fournies. Le workflow et les connexions de l’exemple ont été reformulés, et les explications adaptées au contexte de la visualisation architecturale.

Sources

1 source
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/material-parameter-collections
Résumé

Les textes sources ne sont pas republiés ; les courtes citations sont signalées, le reste est notre propre résumé et commentaire.

L’avis de 3dsınıfı
3dL’analyse de la rédaction

Le principal intérêt pratique des MPC est de réduire la nécessité de mettre à jour séparément une même propriété dans de nombreux matériaux. Pour les équipes de visualisation architecturale, gérer les effets à l’échelle d’une scène depuis un point commun peut rendre la configuration plus ordonnée, notamment lorsqu’il faut modifier des matériaux de façon répétée. L’étape Blueprint permet, quant à elle, de modifier ce contrôle pendant le jeu ou une présentation interactive.

Pour les bureaux et les étudiants en Turquie, l’adaptation à la structure du projet existant et la bonne planification des paramètres sont plus importantes que le coût initial. La source ne précise aucun matériel requis ; il convient également de ne pas supposer de gains de performances qui n’ont pas été mesurés. Avant d’utiliser ce workflow, basé sur la documentation d’Unreal Engine 4.27, dans d’autres versions, mieux vaut vérifier l’interface et la compatibilité du projet, et tenir compte du fait qu’une modification du nombre de paramètres peut entraîner la recompilation des matériaux.

Questions fréquentes

À quoi sert une Material Parameter Collection dans Unreal Engine ?

Elle stocke des paramètres scalaires et vectoriels accessibles à plusieurs matériaux. Modifier une valeur dans la collection permet de contrôler ensemble les matériaux qui l’utilisent.

Combien de paramètres peut contenir une Material Parameter Collection ?

Selon la documentation d’Unreal Engine 4.27 d’Epic, une collection peut contenir jusqu’à 1024 paramètres scalaires et 1024 paramètres vectoriels.

Peut-on modifier une Material Parameter Collection avec Blueprint ?

Oui. L’exemple source montre comment modifier une valeur scalaire pendant le jeu avec le nœud Set Scalar Parameter Value et Timeline dans Blueprint.

Les commentaires et le forum sont en turc.Rejoindre la discussion
+

À lire aussi