PrefabUtility 您所在的位置:网站首页 Unity如何保存预制体 PrefabUtility

PrefabUtility

2024-02-10 23:23| 来源: 网络整理| 查看: 265

如果某些子项是预制件实例,则会自动将这些子项嵌套在新预制件资源内。The input object must be a plain GameObject or the outermost root of a Prefab Instance. It cannot be a child inside a Prefab instance.如果输入对象是预制件实例根,则生成的预制件将是预制件变体。反之,如果要新建唯一的预制件,需要首先解压该预制件实例。返回对象是已保存的预制件资源(如果可用)的根游戏对象。如果编辑器当前正在进行资源编辑批处理操作(使用 AssetDatabase.StartAssetEditing 和 AssetDatabase.StopAssetEditing 控制),则不会在保存时立即导入资源。在此情况下,SaveAsPrefabAsset 会返回 null,即使保存成功也是如此,因为保存的预制件资源尚未重新导入,从而尚不可用。如果要对现有预制件进行保存,Unity 会尝试保留对预制件本身的引用以及预制件的各个部分(如子游戏对象和组件)。要执行此操作,它在新保存的预制件与现有预制件之间匹配游戏对象的名称。注意:因为仅按名称进行此匹配,所以如果预制件的层级视图中有多个同名的游戏对象,则无法预测会匹配哪个游戏对象。因此,如果需要确保在对现有预制件进行保存时保留引用,则必须确保预制件中的所有游戏对象都具有唯一名称。另请注意:当预制件中的单个游戏对象附加了多个相同组件类型时,如果在对现有预制件进行保存时保留对现有组件的引用,则可能会遇到相似问题。在此情况下,无法预测哪个组件会与现有引用匹配。See Also: PrefabUtility.SaveAsPrefabAssetAndConnect and Unpacking Prefab instances.



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有