En bref
- Pour utiliser les Data Layers, World Partition doit être activé sur la carte.
- Un Data Layer Asset existe à l’échelle du projet, tandis qu’un Data Layer Instance appartient à un monde donné.
- Les Editor Data Layers servent à organiser le travail dans l’éditeur ; les Runtime Data Layers peuvent être gérés à l’exécution.
- Epic avertit que le chargement simultané d’un grand nombre d’éléments et certains usages des Runtime Data Layers peuvent affecter les performances.
Ce que vous apprendrez dans ce guide
Dans Unreal Engine, World Partition divise les grandes cartes en cellules de grille au sein d’un niveau persistant unique, puis charge ou décharge ces cellules en fonction des sources de streaming. Les Data Layers permettent quant à elles de regrouper les acteurs d’une carte et de gérer l’état de ces groupes dans l’éditeur ou à l’exécution. Ce guide présente le lien entre ces deux systèmes, la différence entre Data Layer Asset et Data Layer Instance, ainsi que les étapes de création d’une couche et d’affectation des acteurs.
Les Data Layers servent à organiser le contenu d’une scène et à gérer son état de chargement. Dans les scènes d’archviz, elles peuvent aider à séparer des groupes de contenu comme les éléments d’un bâtiment, le paysage et la décoration. Le choix des acteurs à affecter à chaque couche dépend de l’organisation du projet ; la documentation source ne propose pas de modèle de couches spécifique aux scènes architecturales.
Prérequis et concepts de base
World Partition doit être activé sur la carte qui utilise les Data Layers. Selon la documentation d’Epic, lors de la création d’un nouveau niveau, il est possible de choisir le type Open World dans File > New Level. World Partition et Data Layers font partie des fonctionnalités activées par défaut pour ce type de carte. Pour ajouter World Partition à un niveau existant, vous pouvez utiliser Tools > Convert Level ou l’outil de conversion World Partition en ligne de commande.
La documentation officielle ne précise pas la version d’Unreal Engine, les conditions de compte ni la configuration matérielle minimale requises pour ces étapes. Il convient donc de vérifier la version utilisée dans le projet et les méthodes de travail de l’équipe.
Il est important de distinguer deux concepts :
Data Layer Asset : un asset situé à l’échelle du projet et utilisable dans différents mondes. Il contient des informations comme le nom et le type de la Data Layer, ainsi qu’une couleur de débogage.
Data Layer Instance : une instance propre à un monde donné. Un même asset peut être utilisé dans plusieurs mondes ; chaque instance peut avoir des propriétés propres au monde concerné.
Le type d’un Data Layer Asset peut être Editor ou Runtime. Les Editor Data Layers servent à organiser les éléments dans l’éditeur, à les charger ou à les décharger, et à gérer leur visibilité. Les Runtime Data Layers peuvent, quant à eux, être gérés à l’exécution à l’aide de Blueprint ou de C++. Par exemple, un événement en jeu peut déclencher le chargement ou le déchargement des éléments affectés à une couche.
Configurer les Data Layers : étape par étape
Ouvrez une carte avec World Partition activé. Pour créer une nouvelle carte, allez dans File > New Level et choisissez le type Open World. Si vous souhaitez continuer avec une carte existante, envisagez de la convertir. Comme la conversion peut modifier la structure du niveau, il est prudent de la tester dans le cadre de travail du projet avant de l’appliquer à une carte de production.
Créez un Data Layer Asset. Dans le Content Browser, accédez au dossier où vous souhaitez enregistrer l’asset. Faites un clic droit et choisissez Miscellaneous > Data Layer. Enregistrez l’asset sous un nom qui décrit le groupe de contenu qu’il accueillera : vous le retrouverez ainsi plus facilement dans l’Outliner. Il s’agit d’une recommandation de workflow ; la documentation source n’impose aucune convention de nommage particulière.
Ajoutez un Data Layer Instance. Ouvrez le Data Layers Outliner en passant par Window > World Partition > Data Layer Outliner. Faites un clic droit dans l’Outliner, puis choisissez Create New Data Layer. Dans le menu déroulant, associez l’instance créée au Data Layer Asset que vous avez créé. Vous pouvez également faire glisser l’asset dans l’Outliner pour créer une nouvelle instance. Si vous déposez l’asset sur une instance existante, une instance enfant liée à l’asset choisi est créée.
Affectez les acteurs à une couche. Dans le viewport, sélectionnez les acteurs à ajouter. Faites ensuite un clic droit sur l’instance cible dans l’Outliner et choisissez Add Selected Actors to Selected Data Layers. Vous pouvez également utiliser la section Data Layers du panneau Details des acteurs sélectionnés. Pour effectuer l’affectation de cette manière, le Data Layer Asset sélectionné doit avoir une instance dans le monde.
Choisissez le type de couche en fonction de son usage. Pour organiser le contenu dans l’éditeur, le charger ou gérer sa visibilité, envisagez le type Editor. Pour le contrôler à l’exécution avec Blueprint ou C++, choisissez le type Runtime. Par exemple, regrouper séparément différentes variantes d’aménagement peut faciliter le travail sur un groupe précis dans l’éditeur. Il s’agit d’une suggestion d’adaptation du système à l’organisation des scènes d’architecture ; le périmètre des couches dépend des besoins du projet.
Gérez les états Runtime. L’état des Runtime Data Layer Instances peut être modifié à l’aide de Blueprint ou de C++. Dans l’exemple Blueprint de la documentation d’Epic, le nœud Set Data Layer Instance Runtime State est utilisé. Dans cet exemple, passer une instance à l’état Loaded la charge sans la rendre visible dans le niveau. Lorsque vous gérez les couches à l’exécution, ne confondez pas chargement et visibilité ; vérifiez dans la scène que le comportement obtenu correspond à celui attendu.
Adaptez l’affichage de l’Outliner à vos besoins. Le Data Layers Outliner permet de voir les instances existantes et de créer des assets ou des instances. Ses options permettent de masquer les Editor ou Runtime Data Layers, de retirer de la liste les acteurs non chargés et de mettre en évidence les instances contenant les acteurs sélectionnés. Ces options peuvent aider à simplifier l’affichage lorsque vous travaillez avec un grand nombre de couches.
Utilisation dans les workflows d’architecture et de visualisation
Les agences d’architecture, les architectes d’intérieur et les équipes d’archviz peuvent utiliser les Data Layers pour organiser les groupes de contenu des grandes scènes Unreal Engine. Regrouper séparément les abords d’un bâtiment, les éléments paysagers et les acteurs de décoration peut faciliter la sélection et la gestion de chaque groupe. Toutefois, la création de couches ne définit pas, à elle seule, la répartition des tâches ou le partage des fichiers au sein de l’équipe ; sa fonction principale est d’organiser les acteurs et de gérer leur état de chargement.
Les Data Layers fonctionnent avec World Partition. World Partition divise la scène en cellules de grille et les charge en fonction des sources de streaming. Les contrôleurs de joueur peuvent servir de sources de streaming ; il est également possible d’ajouter un composant World Partition Streaming Source. Les Data Layers répartissent quant à elles les acteurs en groupes logiques et contribuent à organiser les grands niveaux. Les équipes doivent d’abord déterminer quels contenus regrouper, puis décider si les couches seront contrôlées dans l’éditeur ou à l’exécution.
Côté performances, Epic indique que le chargement simultané d’un trop grand nombre d’éléments peut poser problème. De plus, l’affectation d’éléments fréquemment utilisés à un grand nombre de Runtime Data Layer Instances peut dégrader les performances de streaming de World Partition. Cet avertissement ne fixe pas de limite précise au nombre de couches ; il est donc nécessaire d’observer le comportement de chargement dans les conditions propres au projet. Utiliser des groupes fonctionnels plutôt que de créer une couche distincte pour chaque acteur est une recommandation de workflow qui peut contribuer à garder une organisation claire.
Les sources ne fournissant pas de configuration matérielle minimale, il n’est pas possible d’affirmer qu’une configuration informatique particulière suffira. Dans les grandes scènes, testez la quantité de contenu chargé et le comportement du streaming. Vérifiez également, au sein de l’équipe, que la version d’Unreal Engine utilisée dans le projet est adaptée au workflow de conversion et aux Data Layers.
Erreurs fréquentes
Oublier la nécessité de World Partition : les Data Layers nécessitent une carte où World Partition est activé. Vérifiez que votre carte remplit cette condition avant de créer des couches.
Confondre asset et instance : l’asset existe à l’échelle du projet, tandis que l’instance est propre à un monde. Assurez-vous que l’instance créée dans l’Outliner est associée au bon asset.
Confondre les types Editor et Runtime : les Editor Data Layers servent à organiser le travail et à gérer la visibilité dans l’éditeur ; les Runtime Data Layers sont destinés à être contrôlés à l’exécution à l’aide de Blueprint ou de C++. Choisissez le type en fonction du cas d’usage.
Négliger le coût du chargement : charger simultanément trop d’éléments ou affecter des éléments fréquemment utilisés à un grand nombre de Runtime Data Layer Instances peut affecter les performances. Vérifiez l’organisation des couches à l’aide d’un petit test.
Étapes suivantes
Commencez par un test avec un petit nombre d’acteurs : créez un Editor Data Layer et un Runtime Data Layer, affectez-y des acteurs, puis examinez leur visibilité et leur état de chargement dans l’Outliner. Si des changements sont nécessaires à l’exécution, gérez l’état des Runtime Data Layers avec Blueprint ou C++.
Les équipes qui souhaitent convertir un niveau existant peuvent utiliser l’option -ReportOnly décrite dans la documentation World Partition pour obtenir un rapport sur les opérations que la conversion effectuerait. Cette option n’effectue pas la conversion. Vérifiez les options proposées par l’outil de commande et la structure du niveau source ; n’appliquez pas directement à une scène de production des changements qui n’ont pas été testés.
Dans les scènes plus grandes, évaluez l’organisation des Data Layers conjointement avec les cellules World Partition et les sources de streaming. Epic indique également que l’utilisation de plusieurs runtime grids peut affecter négativement les performances. Tester l’organisation des couches et du streaming dans votre projet avant de l’intégrer à une scène de production peut aider à repérer les problèmes de chargement en amont.
Sources et licence
Ce guide a été adapté en turc à partir de la documentation officielle d’Epic Games sur Data Layers et World Partition pour Unreal Engine. D’après les informations fournies avec les sources, les deux documents sont indiqués comme étant sous licence libre.
Sources
2 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 agences d’architecture et les équipes de visualisation en Turquie, l’intérêt pratique des Data Layers est de pouvoir mieux organiser le contenu des grandes scènes Unreal Engine. Les équipes qui travaillent sur différents groupes d’acteurs, notamment l’environnement, le paysage et la décoration, peuvent tirer parti de la sélection et du contrôle de la visibilité dans l’Outliner.
Les agences qui envisagent cette fonctionnalité ont tout intérêt à tester le comportement de chargement dans leurs propres scènes : Epic avertit qu’un chargement excessif et certains usages des Runtime Data Layers peuvent affecter les performances. Les sources ne précisant ni configuration matérielle minimale ni version requise, ces éléments doivent être vérifiés au regard des conditions propres au projet.
Questions fréquentes
World Partition est-il nécessaire pour utiliser les Data Layers dans Unreal Engine ?
Oui. World Partition doit être activé sur la carte pour utiliser le système Data Layers. Vous pouvez créer une nouvelle carte de type Open World ou convertir une carte existante.
Quelle est la différence entre un Data Layer Asset et un Data Layer Instance ?
Un Data Layer Asset existe à l’échelle du projet et peut être utilisé dans différents mondes. Un Data Layer Instance est propre à un monde donné.
À quoi servent les Editor et Runtime Data Layers ?
Les Editor Data Layers servent à organiser le contenu et à gérer sa visibilité dans l’éditeur. Les Runtime Data Layers peuvent être gérés à l’exécution avec Blueprint ou C++.



