我正在试用联合公司的新预置工作流程。我想以编程的方式在我已经创建的预置文件上创建prefab变体。我正在使用统一2018.3.0b7。这是如何做到的呢?
发布于 2018-11-01 14:04:27
PrefabUtility.SaveAsPrefabAsset函数用于创建一个预置变量。请注意,您只能在编辑器中创建预制板和预置变体,而不是在构建中。要创建一个预置变量,首先必须使用PrefabUtility.InstantiatePrefab实例化预制件,然后可以使用PrefabUtility.SaveAsPrefabAsset函数来创建该变体。
从文件中加载您的预置文件或获取对原始预制件的引用:
GameObject prefabRef
= (GameObject)AssetDatabase.LoadMainAssetAtPath("Assets/Prefabs/YourPrefabName.prefab");实例化预置编辑器的方法
GameObject instanceRoot = (GameObject)PrefabUtility.InstantiatePrefab(prefabRef);创建预置变体
GameObject pVariant = PrefabUtility.SaveAsPrefabAsset(instanceRoot, "Assets/Prefabs/PrefabOutputName.prefab");清除实例化对象
GameObject.DestroyImmediate(instanceRoot);注意:
您需要Unity2018.3b及以上来创建prefab变体。
https://stackoverflow.com/questions/53095501
复制相似问题