包含此页的版本:
不含此页的版本:
创建和使用预制件一种资产类型,允许您存储包含组件和属性的游戏对象。预制件充当模板,你可以从中在场景中创建新的对象实例。更多信息
请参阅术语表在项目中,必须执行以下作:
要创建预制件资产,请执行以下步骤:
Assets文件夹中的项目窗口一个窗口,显示您的内容Assets文件夹(项目选项卡)更多信息然后,Unity 从 GameObject、其所有组件和子 GameObject 创建预制件资产。原始游戏对象将成为新创建的预制件资产的实例。
Assets文件夹中,Health Pack 对象将另存为 .prefab 文件,原始游戏对象将成为预制件资产的实例。检查器显示运行状况包预制件资产的详细信息。如果将多个尚未预制件的游戏对象拖到“项目”窗口中,Unity 会为每个游戏对象创建新的预制件资源,而无需任何额外步骤。但是,如果任何游戏对象是现有的预制件或预制件变体,Unity 会显示一个对话框,要求您确认是要从游戏对象创建新的预制件资产还是新变体。
您可以将预制件资产替换为“层次结构”窗口中的游戏对象或预制件实例。要替换预制件资产,请执行以下作:
如果游戏对象或预制件实例的内容与预制件资源不同,则 Unity 会显示一个对话框,以确认您打算替换预制件资源。
Unity 尝试保留对预制件和预制件的各个部分(例如子游戏对象和组件)的引用。为此,它会匹配新预制件和要替换的现有预制件之间的游戏对象名称。
由于 Unity 仅按名称执行此匹配,因此如果预制件资产的层次结构中存在多个具有相同名称的游戏对象,则匹配是不可预测的。因此,为确保 Unity 在保存现有预制件时保留引用,请确保预制件中的所有游戏对象都具有唯一的名称。
如果游戏对象附加了多个相同类型的组件,则 Unity 的行为方式类似。
要创建预制件资产的实例,请执行以下作:
您还可以使用脚本在运行时创建预制件实例。有关更多信息,请参阅实例化预制件。
您可以替换预制件实例的父预制件资源,同时保留实例的位置、旋转和缩放。Unity 合并新预制件资源的内容,并通过基于名称的匹配保留任何覆盖和引用。
您可以通过以下方式替换预制件资产:
您还可以使用PrefabUtility.ReplacePrefabAssetOfPrefabInstance方法来控制您的脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表.