Avec Scene Graph, vous pouvez passer d'une ébauche ou d'un début de création de monde à un niveau entièrement jouable en quelques étapes.
Scene Graph est un système natif de Verse qui bénéficie des caractéristiques de Verse. Il vous permet de personnaliser davantage vos projets à l'aide d'objets et de gameplay interactifs, eux-mêmes personnalisés.
Scene Graph renforce la stabilité du projet, car Verse effectue le gros du travail en arrière-plan, en veillant à ce que les entités fonctionnent comme prévu. Verse bénéficie également d'un accès approfondi à toutes les parties des entités et composants de scène, ce qui vous permet de grandement diversifier votre scène.
Activer Scene Graph dans votre projet
Pour utiliser Scene Graph dans votre projet :
Dans la barre d'outils, cliquez sur Projet > Paramètres du projet pour ouvrir la fenêtre Paramètres du projet.
Dans la fenêtre Paramètres du projet, sous Accès bêta, activez Outils Scene Graph. Scene Graph est activé par défaut dans la version bêta.
Pour vous assurer de pouvoir accéder aux fonctionnalités de Scene Graph, dans la barre d'outils, sélectionnez l’option Placer des acteurs et confirmez la présence de l’élément Entités dans le menu déroulant Placer des acteurs.
Les objets dans le métavers
Le métavers est une expérience de divertissement social en ligne en temps réel dont les utilisateurs se servent pour jouer et communiquer dans un monde en 3D. Epic Games conçoit le système Scene Graph pour l'UEFN afin de vous permettre de créer ces expériences dans le métavers.
Dans le système Scene Graph, vous pouvez instancier et réutiliser des objets sans la classification Acteur de l'Unreal Engine. Au cœur de Scene Graph se trouve un ensemble de blocs de construction reposant sur des données et une logique pour créer votre jeu et afficher et simuler les objets dans n'importe quel environnement.
Les acteurs et les entités ne sont pas interchangeables, ils sont des systèmes différents qui coopèrent au sein de la scène.
Avec Scene Graph, vous pouvez établir un framework de simulation 3D en temps réel dont toutes les décisions et tous les résultats de conception sont instantanément visibles dans le hublot. Ces derniers peuvent être modifiés dans le panneau Détails ou dans l’éditeur de préfabriqués.
Vous pouvez importer les ressources que vous créez ou achetez auprès d'un fournisseur et les utiliser avec Scene Graph pour créer des objets et des préfabriqués personnalisés.
Tout ce que vous créez dans Scene Graph peut être réutilisé plusieurs fois, en consommant moins de mémoire. Le système de bâtiment de Scene Graph a été conçu pour permettre un partage de contenu et des simulations partagées complexes tout en séparant les contenus.
Entités et composants
Les entités et les composants sont l'épine dorsale de Scene Graph. Ils contrôlent la définition et le comportement des objets.
Les entités sont des conteneurs pour les composants ou pour d'autres entités. Une entité vide n'aura aucun effet ni aucune fonctionnalité visible. Les composants fournissent à une entité ses données et un comportement. La combinaison de composants ajoutée à une entité définit le rôle de cette entité dans la scène.
Une entité peut contenir un nombre illimité de composants différents. Cependant, un seul composant d’un type de composant spécifique peut être ajouté à une entité à la fois. Par exemple, un seul type de light_component peut être utilisé sur une entité. Pour utiliser plusieurs composants d'un type commun, vous pouvez créer de nouvelles entités pour contenir chaque instance du composant.
Certains types de composants sont générés par des actifs créés dans l'UEFN. Les composants générés par ressource sont une classe de composant créé automatiquement à base d'un contenu qui existe déjà dans votre projet, comme un maillage, un son ou un système de particules. Ces ressources peuvent également exposer des propriétés que vous pouvez modifier sur le composant généré.
Leurs propriétés sont modifiables. Ces propriétés peuvent être physiques, comme un maillage statique ou un système de particules, ou logiques, comme une balise de jeu ou du code Verse personnalisé définissant le déplacement d'une plateforme. Par défaut, toutes les entités ont un composant de transformation pour préciser où se situe l'entité dans le monde.
Construire une entité avec Verse ne crée pas automatiquement de composant de transformation.
Scene Graph vous permet de rassembler rapidement des pièces et mécaniques de jeu définies en exploitant les données physiques des maillages et signaux sonores, entre autres.
Une entité devient la représentation physique d'un maillage statique lorsque vous ajoutez un composant de maillage à l'entité et qu'un maillage est sélectionné dans le créneau de maillage du composant. Vous pouvez donc créer rapidement des maquettes de bâtiments ou de pièces individuelles et les utiliser immédiatement dans votre scène.
Dans la vidéo ci-dessous, par exemple, une entité est transformée en un cluster de conifères.
Vous pouvez transformer ce cluster d'arbres en un préfabriqué indépendant ou l'associer à d'autres entités pour créer un préfabriqué de forêt.
Une entité (l'entité de simulation) se situe à la racine de votre projet pour représenter la simulation. La scène est créée lorsque les entités sont imbriquées sous l'entité de simulation. En ajoutant des entités à la carte, vous créez automatiquement des entités enfants de l'entité de simulation.
L'entité au sommet d'un préfabriqué est son entité racine, les autres préfabriqués et entités étant imbriquées en dessous. Les préfabriqués parents constituent l'aspect et le comportement de leurs enfants, pour interagir avec d'autres objets de la scène.
Cliquez sur l'image pour l'agrandir.
Entité racine de préfabriqué → WoodenHouse_Tiny_Prefab
Préfabriqué enfant → WoodenHouse_RoofSmall_Prefab_C_1
Entité enfant → Building_WIndowCircle_Bright2
Entité enfant → Building_WIndowCircle_Bright4
Entité enfant → Building_WIndowCircle_Dark2
Entité enfant → Building_WIndowCircle_Dark4
Entité enfant → WoodenHouse_Floor
Entité enfant → WoodenHouse_RoofCap2
Entité enfant → WoodenHouse_RoofCap3
Entité enfant → WoodenHouse_RoofWindow2
Préfabriqué enfant → WoodenHouse_SmallFloor_Prefab_C_1
Entité enfant → WoodenHouse_Floor
Entité enfant → WoodenHouse_Wall10
Entité enfant → WoodenHouse_WallDoor_C4
Préfabriqué enfant → WoodenHouse_Windows_Prefab_C_3
Entité enfant → Building_WindowPlane_Bright3
Entité enfant → Building_WindowPlane_Bright4
Entité enfant → Building_WindowPlane_Dark3
Entité enfant → Building_WindowPlane_Dark4
Entité enfant → WoodenHouse_Windoows_10
Chaque préfabriqué enfant contient des composants déterminant l'aspect du préfabriqué et son mode d'alignement avec les autres préfabriqués de la scène. Vous pouvez utiliser Verse pour cibler des préfabriqués et entités spécifiques et échanger le préfabriqué enfant avec un autre préfabriqué ou même changer la couleur utilisée pour les entités Building_WindowPlane_Bright and Building_WindowPlane_Dark.
De nombreux types de composants déterminent le mode d'action d'une partie d'une entité ou d'une entité entière. Pour en savoir plus sur les différents types de composants disponibles dans Scene Graph, consultez la rubrique Composants.
Pour plus d’informations sur l'utilisation des entités et des composants, consultez la rubrique Utiliser des entités et des composants.
Préfabriqués
Scene Graph crée des préfabriqués en regroupant les entités dans une relation d'ancêtre à descendant. Un ancêtre est toute entité de niveau antérieur à une autre entité, comme un parent, un grand-parent, un arrière-grand-parent, etc. Un descendant est une entité postérieure à l'ancêtre, comme un enfant, un petit-enfant, etc.
Toutes les entités et hiérarchies d'entités sélectionnées, ainsi que leurs composants sont instantanément ajoutés à l'arborescence d'entités dans le préfabriqué. Une fois que vous disposez d'un préfabriqué, vous pouvez en personnaliser toutes les instances dans l'éditeur de préfabriqués.
Pour créer une instance de préfabriqué, faites glisser un préfabriqué du navigateur de contenu au hublot. Vous pouvez également imbriquer des préfabriqués dans une hiérarchie. Vous pouvez utiliser la hiérarchie pour appliquer les modifications apportées à toutes les instances et préfabriqués de la hiérarchie.
À mesure que vous modifiez et améliorez le préfabriqué, vous gagnez du temps en n'ayant pas à trouver toutes les instances de cet objet pour les mettre à jour individuellement.
Vous pouvez, en outre, fabriquer une multitude d'objets d'apparence semblable en sélectionnant les sous-parties de la hiérarchie et en remplaçant les différentes valeurs des composants. Vous pouvez aussi faire pivoter les objets et ajouter de nouvelles valeurs de composants aux diverses instances de préfabriqués lorsque vous effectuez des modifications dans l'éditeur de préfabriqué.
L'éditeur marque tous les changements dans le panneau Détails à l'aide d'une icône qui signifie qu'un remplacement existe sur chaque attribut de composant. Il ajoute également diverses icônes de composant sur le bouton de menu déroulant de carte de composant.
Pour revenir au design du préfabriqué d'origine, cliquez sur les cases de remplacement de composant individuelles. L'objet revient automatiquement à l'état du préfabriqué parent. Vous pouvez aussi cliquer sur le bouton de menu déroulant de la carte de composant et sélectionner Effacer le remplacement.
Pour en savoir plus sur la modification des préfabriqués, consultez la rubrique Préfabriqués et instances de préfabriqués.
Dans la vidéo ci-dessous, Scene Graph est utilisé pour créer deux préfabriqués de pièces de château.
La pièce est dupliquée. Un élément de la pièce est modifié en sélectionnant le maillage du sol et en remplaçant l'original, ce qui crée un nouveau préfabriqué. Vous pouvez continuer de copier et remplacer des parties pour créer rapidement la maquette d’un petit château et même d’un village. Cette méthode fonctionne aussi avec les composants, ce qui vous permet d’ajouter un comportement différent à chacune des pièces du château.
Modifier les préfabriqués n'a aucune influence sur la stabilité et la mémoire de l'objet d'origine ni sur ses copies. Cela signifie que vous pouvez terminer votre disposition de niveau, votre design abstrait et la partie artistique de votre projet afin de créer des objets personnalisés pour votre île. Le système de construction de Scene Graph vous permet de réutiliser les préfabriqués que vous créez pour d'autres projets et de créer votre propre univers de jeu dans Fortnite.
Verse dans Scene Graph
Verse est le langage de programmation qu'utilise Scene Graph pour générer et supprimer des entités et créer des composants et des comportements personnalisés.
Il vous permet de créer une lanterne extérieure qui se balance dans l'exemple précédent de la maison et de définir les propriétés de balancement, de rotation et de durée qui déterminent le mouvement de la lanterne.
Les préfabriqués que vous créez dans votre projet sont exposés à Verse en tant que classe dans le fichier Assets.digest.verse de votre projet. Les entités et composants définis dans votre préfabriqué sont accessibles dans Verse via les appels GetEntities() et GetComponents() effectués sur un préfabriqué.
Pour commencer à utiliser Verse dans Scene Graph, consultez la rubrique Créez votre propre composant à l'aide de Verse.
Expérience pratique
Le
Ouvrez la rubrique Créer un jeu de plateforme avec Scene Graph pour en savoir plus sur l'utilisation de Scene Graph pour créer un gameplay intéressant.
Pour des tutoriels plus approfondis, consultez les tutoriels Scene Graph disponibles.