
Prefabs
Un prefab est un asset qui contient une entité sérialisée et peut être instancié dans votre scène. Il est utile pour créer de nombreuses instances d'un même type d'entité, comme des colonnes, des chaises, des composants d'interface, etc. On pourrait simplement dupliquer les entités, mais les prefabs sont plus efficaces, car les modifications apportées au prefab se propagent automatiquement à toutes ses instances dans les scènes.
Evergine intègre une première version de notre nouveau système de Prefabs, avec un socle de nouvelles fonctionnalités, pendant que nous travaillons à en ajouter d'autres intéressantes très prochainement. Dans cette première version, nous prenons en charge la création et l'instanciation de prefabs, et nous prévoyons d'ajouter un éditeur complet dans notre prochaine version.
Créer des prefabs dans Evergine Studio
Pour l'instant, vous pouvez créer un prefab en sélectionnant une entité, en faisant un clic droit dessus et en choisissant l'élément « Create prefab » dans le menu contextuel.

Cela crée un asset Prefab portant le nom de l'entité dans le dossier d'assets actuel.

Instancier des prefabs dans Evergine Studio
Pour instancier un prefab dans votre scène, il suffit de faire glisser un asset prefab dans le visualiseur de scène : une nouvelle instance de Prefab est alors créée.

Une fois instanciée, la Prefab Instance de votre scène peut être modifiée et déplacée, et la scène conserve la trace de ces modifications. Dans cet exemple, nous avons créé une petite forêt.
Instancier des prefabs par code
Instancier un prefab par code est également très simple. Il suffit d'appeler la méthode Instantiate de l'objet Prefab.
var treePrefab = this.assets.Load<Prefab>(EvergineContent.Prefabs.tree);
var treeInstance = treePrefab.Instantiate();
this.Managers.EntityManager.Add(treeInstance);
