Les préfabriqués sont des objets stables qui utilisent une hiérarchie d'entités et de composants pour inclure les informations de base que toutes les instances de préfabriqués partagent.
Cela vous permet de modifier plus facilement les préfabriqués, simultanément ou individuellement, à mesure que vous créez et concevez votre niveau. Vous pouvez instancier et remplacer les ressources créées dans Scene Graph en vue de créer de nouveaux objets et préfabriqués dans le jeu.
Les préfabriqués agissent comme un tampon pour les objets du jeu. Vous pouvez donc placer le préfabriqué dans la scène autant de fois que vous le souhaitez. Toutes les instances que vous créez sont modifiables en groupe ou séparément.
Pour en savoir plus sur les possibilités et le potentiel des préfabriqués, consultez les rubriques suivantes :
Enregistrer des entités en tant que préfabriqués
La construction des préfabriqués doit être aussi précise que possible, sans complication excessive. Les préfabriqués dont les entités et composants sont nombreux comportent trop de données et peuvent entraîner des problèmes pour votre projet.
Un seul type de composant peut être utilisé sur une entité à la fois. Cela signifie qu'une fois que vous avez sélectionné un type de composant, vous ne pouvez pas réutiliser ce type de composant sur la même entité. Pour utiliser le même composant, vous devez ajouter une autre entité, puis ajouter le même composant à la nouvelle entité.
Pour créer un préfabriqué :
Dans l'organiseur, faites un clic droit sur l'entité parente et choisissez Enregistrer en tant que préfabriqué. La fenêtre Créer un nouveau préfabriqué s'ouvre.
Cliquez sur l'image pour l'agrandir.
Vous pouvez commencer par imbriquer les entités dans l'organiseur ou ajouter ultérieurement de nouvelles entités à un préfabriqué dans l'éditeur de préfabriqué.
Donnez un nom au préfabriqué et sélectionnez Créer une classe d'entités. L'éditeur de préfabriqué s'ouvre avec le préfabriqué que vous avez créé dans le hublot. La vignette du préfabriqué s'affiche dans le navigateur de contenu.
Il est possible d'imbriquer et de regrouper les préfabriqués dans l'organiseur pour en faciliter la modification.
Sélectionnez la vignette du préfabriqué et faites glisser le préfabriqué du navigateur de contenu vers le hublot. Une autre instance du préfabriqué est ainsi créée.
Propager les modifications à toutes les instances de préfabriqué
Une instance de préfabriqué n'est pas qu'une copie visuelle d'un préfabriqué original. Lorsque vous effectuez des modifications à l'aide de l'éditeur de préfabriqués, toutes les modifications enregistrées s'appliquent automatiquement à l'ensemble des instances. Il est utile de recourir aux hiérarchies de Scene Graph pour déterminer le mode d'interaction des préfabriqués et entités enfants avec le parent, Surtout lorsque vous travaillez avec des ressources dont les points de pivot peuvent se trouver hors du centre ou n'utilisent pas les unités Unreal pour s'aligner avec les objets du monde.
Cela vous permet de gagner du temps, car vous n'avez pas à rechercher chaque instance de préfabriqué et à apporter sans cesse les mêmes modifications.
Vous pouvez également regrouper différents préfabriqués dans une hiérarchie pour créer des préfabriqués plus complexes.
Remplacer des instances de préfabriqué
Vous pouvez remplacer les composants d'une instance de préfabriqué pour apporter des modifications propres à cette instance. Lorsque vous remplacez un composant, une icône Remplacer apparaît sur l'entité dans l'organiseur, sur la carte de composant et à côté du composant remplacé dans le panneau Détails.
Les remplacements supplantent le plan du préfabriqué parent au niveau du composant concerné par les modifications des propriétés remplacées du composant. Vous pouvez remplacer les composants de deux manières :
Modifier un préfabriqué dans l'éditeur de préfabriqués.
Remplacer une entité ou un composant à partir de la carte de composant.
Depuis l'éditeur de préfabriqués, ajoutez un nouveau composant ou créez un composant Verse pour ajouter des fonctionnalités au préfabriqué, telles que le mouvement ou l'interactivité. L'enregistrement de ces modifications dans l'éditeur de préfabriqués assure que la modification s'applique à chaque instance du préfabriqué dans la scène.
Le remplacement d'une entité se fait en ajoutant un nouveau composant ou en créant un composant Verse pour ajouter des fonctionnalités, telles que le mouvement ou l'interactivité.
Le remplacement d'une entité ou d'un composant à partir de la carte de composant dans une instance de préfabriqués applique les modifications uniques à cette instance. Dans l'image ci-dessous, les deux maisons en bois sont basées sur le même modèle de préfabriqué d'origine, mais la seconde maison comporte des modifications sur certaines cartes de composants clés. Ces modifications permettent d'ajouter des maillages différents ou de faire pivoter certaines parties du préfabriqué pour en montrer un autre côté.
Pour remplacer un composant :
Dans le navigateur de contenu, faites glisser une instance du préfabriqué dans le hublot.
Dans l'organiseur, sélectionnez l'entité sur l'instance de préfabriqué.
Dans le panneau Détails, cliquez sur le bouton du menu de la carte de composant et sélectionnez Remplacer le composant.
Sélectionnez une nouvelle propriété pour le composant. Pour cette instance, le remplacement de ce composant est maintenant différent du préfabriqué parent. Il reste inchangé si vous apportez des modifications au préfabriqué parent.
Remplacer les icônes
Les icônes de remplacement sont des cercles bleus avec une flèche bleue indiquant le centre du cercle. L'icône indique qu'un composant de cette entité a été remplacé. Lorsque des entités sont remplacées, vous pouvez les utiliser plusieurs fois dans la scène. Elles fonctionneront toujours de manière cohérente dans un préfabriqué.
Les nouvelles entités ajoutées à un préfabriqué ont des cercles verts avec un signe plus au milieu pour signifier qu'elles ont été ajoutées après l'établissement du préfabriqué.
Hiérarchies de préfabriqués
Les hiérarchies de préfabriqués sont créées en imbriquant des entités et des préfabriqués sous un préfabriqué parent ou une entité parente. Le parentage permet de :
Changer l'échelle des fonctions de composant d'un préfabriqué pour spécifier le mode de fonctionnement du préfabriqué dans la scène.
Déterminer le mode d'interaction des entités enfants avec le préfabriqué parent.
Les hiérarchies permettent de fixer des ressources à un vecteur particulier dans la scène grâce au placement du point de pivot. Cela est utile non seulement pour l'habillage du décor, mais également pour les éléments de jeu qui utilisent des coordonnées.
Placement de point de pivot et fixation sur la grille
Les points de pivot et la fixation sur la grille fonctionnent avec le transform_component d'une entité pour aligner les objets du jeu et les préfabriqués dans la scène.
L'éditeur de préfabriqué ne recourt pas à la grille pour changer l'échelle des préfabriqués. Pour ce faire, utilisez le menu contextuel (clic droit) de l'organiseur pour déterminer le décalage du point de pivot d'un préfabriqué.
La fixation sur la grille dépend de la taille de votre ressource. Pour vous assurer que les ressources se comportent comme prévu, il convient de définir leur échelle sur 512 unités Unreal et d'utiliser la mesure de grille définie dans l'UEFN. Si vous ne redimensionnez pas vos ressources, alors réinitialisez leur point de pivot et redimensionnez les paramètres de fixation sur la grille.
Placer le point de pivot au centre d'un préfabriqué ne fonctionne pas pour tous les types de ressources, tels que les escaliers. Vous pouvez dans ce cas utiliser l'option Modifier la transformation dans le mode Modélisation pour décaler le point de pivot et vous assurer du bon placement de vos ressources et de leur bon alignement dans le monde.
Apprenez-en davantage sur l'espace du monde 3D avec le document Système de coordonnées gauche-haut-avant.
Composition dans Scene Graph
La composition dans Scene Graph permet d'aligner des ressources. Toutes les entités enfants et les préfabriqués pivotent sur un décalage par rapport à l'objet parent. Si vous faites pivoter une structure de préfabriqué de 360 degrés, l'objet tourne autour de son centre sur la grille.
Lorsque vous faites pivoter un acteur dans l'UEFN, la rotation est déterminée par le placement de l'acteur dans le monde. Cela rend plus difficile l'alignement des acteurs individuels pour créer une structure complète.
Il est utile de recourir aux hiérarchies de Scene Graph pour déterminer le mode d'interaction des préfabriqués et entités enfants avec le parent, Surtout lorsque vous travaillez avec des ressources dont les points de pivot peuvent se trouver hors du centre ou n'utilisent pas les unités Unreal pour s'aligner avec les objets du monde.
Cela est également utile lors du placement de ressources décoratives par rapport aux préfabriqués parents sur lesquels ils sont placés dans la scène.
Pour en savoir plus sur l'utilisation du composant de transformation, consultez le document Composant de transformation (RYANS DOC LINK HERE).
Classe de préfabriqué dans Verse
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. Vous pouvez générer des instances de vos préfabriqués en instanciant la classe de préfabriqué et en l'ajoutant à une entité de la scène avec Verse.
Pour en savoir plus sur l'utilisation des préfabriqués, consultez la rubrique Créer votre propre composant dans Verse.