Keep your place in this quest

Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.

Les Modèles d'Entité sont le système d'entité réutilisable de Cave.

Ils vous permettent de construire une configuration d'entité une fois, de l'enregistrer en tant qu'actif, et de placer des instances de celle-ci à travers les scènes.

image.png

Si vous venez d'un autre moteur, vous pouvez considérer les Modèles d'Entité comme le workflow de type prefab de Cave. Si vous êtes nouveau dans les moteurs de jeu, pensez-y comme des recettes d'objets réutilisables.

Au lieu de reconstruire la même porte, ennemi, objet à ramasser ou widget UI à chaque fois, vous créez la configuration une fois et la réutilisez où vous en avez besoin.

Qu'est-ce que les Modèles d'Entité ?

Un Modèle d'Entité est un actif qui stocke une structure d'entité.

Il peut inclure :

  • Une entité racine (chaque Modèle DOIT avoir une et une seule Entité Racine).
  • Des entités enfants.
  • Des composants.
  • Des paramètres de component.
  • Des références d'actif.
  • Des propriétés.
  • Des tags.

Lorsque vous placez un modèle dans une scène, Cave crée une instance de ce modèle.

L'instance utilise l'actif modèle comme base, ce qui signifie qu'elle peut conserver la même structure interne tout en existant comme un objet placé dans une scène spécifique.

Pourquoi les Modèles d'Entité sont importants

De nombreux objets du jeu ne sont pas juste un maillage.

Un objet à ramasser pourrait inclure :

  • Un modèle visible.
  • Un déclencheur.
  • Une lumière.
  • Un effet de particule.
  • Un son.
  • Une logique qui donne la récompense.

Un modèle vous permet de garder l'ensemble de cette configuration ensemble.

Utilisez les Modèles d'Entité pour des choses comme :

  • Les personnages joueurs.
  • Les ennemis.
  • Les objets à ramasser.
  • Les portes.
  • Les balles.
  • Les véhicules.
  • Les portails.
  • Les volumes de dégâts.
  • Les accessoires.
  • Les pièces UI.
  • Les objets de jeu réutilisables.

Les modèles font gagner du temps, mais ils gardent également les objets répétitifs cohérents. Si chaque objet à ramasser de santé provient du même modèle, vous pouvez améliorer le modèle une fois et garder le projet organisé.

Création d'un Modèle d'Entité

Vous pouvez créer un Modèle d'Entité depuis le Navigateur d'Actifs, ou bien vous pouvez promouvoir une entité de scène existante en modèle en cliquant avec le bouton droit sur celle-ci dans le Graphique de Scène ou en appuyant sur Ctrl + T pour promouvoir celle sélectionnée.

Un workflow courant est de construire l'objet directement dans une scène d'abord, de le tester, et de ne le convertir en modèle qu'une fois la configuration utile. Cela ressemble à ceci :

  1. Construisez une entité dans une scène.
  2. Ajoutez les composants et enfants nécessaires.
  3. Ajustez ses paramètres.
  4. Promotez-le en Modèle d'Entité.
  5. Réutilisez ce modèle dans la même scène ou d'autres scènes.

Mais dès que vous êtes sûr que vous allez réutiliser une telle chose, comme le joueur, les ennemis, les power-ups, etc., il est de bonne pratique de le créer immédiatement, soit dans le navigateur d'actifs, soit en le promouvant comme suggéré précédemment.

Dans le Graphique de Scène, le menu d'édition rapide peut promouvoir une entité en modèle. Le raccourci montré par l'éditeur est Ctrl + T.

Actif Modèle vs Instance de Modèle

Il est utile de séparer l'actif modèle de l'instance placée.

Concept Signification
Actif modèle La configuration d'objet réutilisable stockée dans le Navigateur d'Actifs.
Instance de modèle Une copie placée de ce modèle à l'intérieur d'une scène.

L'actif définit la structure réutilisable.

L'instance est où cette structure réutilisable apparaît dans une scène spécifique.

Édition d'un Modèle d'Entité

Les modèles sont édités comme leur propre actif.

Lorsque vous ouvrez un modèle pour l'édition, Cave bascule vers une scène d'édition de modèle afin que vous puissiez modifier directement la structure interne de l'entité du modèle.

L'idée importante est :

> Le modèle possède sa hiérarchie interne.

Les instances de scène utilisent cette hiérarchie, mais elles ne possèdent pas directement chaque enfant à l'intérieur. Cela garde toutes les instances reliées à la même configuration réutilisable.

Il convient de mentionner que cela devient faux une fois que le jeu commence, car lorsque vous démarrez le jeu, toute la hiérarchie du modèle est immédiatement disponible pour vous permettre de la personnaliser. Donc, lors de la programmation de la logique de votre jeu, vous pouvez vous attendre à pouvoir interagir avec l'instance du modèle d'entité, les enfants, etc.

Par exemple, si vous ouvrez un modèle Ennemi et ajoutez un nouvel enfant Barre de Vie à l'intérieur, chaque instance de ce modèle d'ennemi peut bénéficier de la structure mise à jour.

Pourquoi les Enfants de Modèle ne sont pas Édités Directement dans la Scène

Lorsqu'une instance de modèle est placée dans une scène, les enfants internes appartiennent toujours au modèle. C'est pourquoi Cave protège les enfants de modèle de l'édition directe de la scène.

Par exemple, si un modèle d'ennemi contient :

Ennemi
  Maillage de Corps
  Zone de Détection
  Barre de Vie

Vous devriez éditer ces enfants internes à l'intérieur du modèle, et non comme des objets détenus par la scène séparément.

Cela garde chaque instance cohérente. Si chaque ennemi placé pouvait librement éditer ses enfants internes, le modèle cesserait d'être un objet réutilisable fiable.

Instancier un Modèle dans une Scène

Après qu'un modèle existe, vous pouvez le placer dans une scène.

Par exemple, vous pouvez faire glisser un modèle depuis le Navigateur d'Actifs dans la Vue 3D.

Lorsque le modèle est placé :

  • Il apparaît dans le Graphique de Scène en tant qu'instance de modèle.
  • Cave utilise une couleur de modèle différente (verte) pour l'instance.
  • L'instance garde sa connexion à l'actif modèle.

image.png

D'un point de vue workflow, c'est l'une des manières les plus rapides de construire des niveaux. Vous créez une porte, un objet à ramasser, un ennemi ou un accessoire réutilisable une fois, puis placez des instances où le niveau en a besoin.

Personnalisation Locale de Modèle

Les instances de modèle peuvent toujours être personnalisées localement :

image.png

La manière principale de le faire est à travers les propriétés exposées par l'entité racine du modèle.

Cela vous offre un équilibre utile :

  • La structure reste réutilisable.
  • Chaque instance placée peut avoir ses propres valeurs.

Par exemple, plusieurs ennemis peuvent utiliser le même modèle d'ennemi, tandis que chaque instance a des valeurs de santé, de vitesse, de paramètres de patrouille ou d'options de comportement différentes.

Exemples de Propriétés Locales de Modèle

Les propriétés locales utiles incluent :

Propriété Exemple d'utilisation
Santé de l'ennemi Rendre un ennemi plus faible ou plus fort.
Vitesse de l'ennemi Créer des variantes lentes et rapides.
Montant de dégâts Réutiliser une configuration de danger avec différents niveaux de danger.
Niveau cible du portail Envoyer chaque portail vers une scène différente.
Valeur de ramassage Rendre des pièces, des gemmes ou des récompenses valant des montants différents.
État verrouillé de la porte Réutiliser une configuration de porte pour des portes verrouillées et déverrouillées.
Texte UI Réutiliser un widget UI avec différentes étiquettes.

Par exemple, un modèle Portail peut être utilisé à de nombreux endroits si chaque portail placé a une propriété locale qui choisit la scène cible.

Exemples de Modèle de Projet de Départ

Les projets de départ peuvent inclure plusieurs modèles utiles en fonction des options de projet que vous avez sélectionnées.

Vous pouvez trouver des exemples tels que :

  • Modèle de joueur.
  • Modèle d'ennemi.
  • Modèle de dégâts.
  • Modèle de portail.
  • Modèle de véhicule.
  • Pièces de jeu réutilisables.

Ceux-ci valent la peine d'être inspectés. Ouvrez-les, regardez la hiérarchie, inspectez les composants et voyez quelles propriétés sont exposées.

Le contenu généré n'est pas seulement là pour être utilisé. Il est aussi là pour vous enseigner comment de vrais objets Cave peuvent être construits.

Bonnes Utilisations des Modèles d'Entité

Créez un modèle lorsque qu'un objet est :

  • Répété plusieurs fois.
  • Utilisé à travers plusieurs scènes.
  • Construit à partir de plusieurs composants.
  • Construit à partir de plusieurs entités enfants.
  • Destiné à se comporter de manière cohérente.
  • Utile en tant que pièce de jeu réutilisable.

De bons candidats incluent :

  • Ennemis.
  • PNJs.
  • Armes.
  • Balles.
  • Objets à collectionner.
  • Portes.
  • Points de contrôle.
  • Pièges.
  • Portails de niveau.
  • Véhicules.
  • Accessoires destructibles.
  • Widgets UI.
  • Pièces de design de niveau réutilisables.

Plus vous réutilisez souvent un objet, plus un modèle devient précieux.

Quand ne pas utiliser un Modèle

Tout n'a pas besoin d'être un modèle.

Un objet unique qui apparaît une fois et n'a de sens que dans une seule scène peut rester en tant qu'entité de scène normale.

Par exemple :

  • Un accessoire cinématique unique.
  • Un déclencheur spécifique à un niveau.
  • Une décoration unique qui ne sera jamais réutilisée.
  • Un objet de test temporaire.

Les modèles sont puissants, mais ils sont les plus utiles lorsque la réutilisation a réellement de l'importance. Transformer chaque petit objet en modèle trop tôt peut rendre le projet plus difficile à gérer, pas plus facile.

Une Règle de Modèle Simple

Si vous vous retrouvez à copier la même configuration d'entité plus d'une fois, envisagez de la transformer en Modèle d'Entité.

Cette habitude peut vous faire gagner beaucoup de temps et garder votre projet beaucoup plus propre à mesure qu'il grandit.