
预制件
预制件是一种资产,它包含一个序列化的实体,并可以在你的场景中实例化。当需要创建许多相同类型的实体实例(如柱子、椅子、UI 组件等)时,它非常有用。我们可以直接复制实体,但使用预制件更高效,因为对预制件所做的更改会自动传播到场景中所有其实例。
Evergine 正在添加我们新 预制件 系统的早期版本,它包含一系列核心新功能,同时我们正在努力在不久的将来添加更多有趣的功能。在这个第一个版本中,我们支持 预制件 的创建和实例化,并计划在下一个版本中添加功能完备的编辑器。
在 Evergine Studio 中创建预制件
现在,我们可以通过选择一个实体,右键单击它,然后在上下文菜单中选择“创建预制件”项来创建预制件。

这将在当前资产文件夹中创建一个以该实体命名的预制件资产。

在 Evergine Studio 中实例化预制件
要在你的场景中实例化一个 预制件,你只需将预制件资产拖放到场景查看器中,就会创建一个新的预制件实例。

实例化后,场景中的 预制件实例 可以被修改和移动,场景会跟踪这些更改。在这个例子中,我们创建了一个简单的小森林。
通过代码实例化预制件
在代码中实例化预制件也非常简单。我们只需要调用预制件对象的 Instantiate 方法。
var treePrefab = this.assets.Load<Prefab>(EvergineContent.Prefabs.tree);
var treeInstance = treePrefab.Instantiate();
this.Managers.EntityManager.Add(treeInstance);
