如何从Unity中的gameObject创建预制件?

时间:2017-06-03 04:47:01

标签: c# unity3d

我有下一个问题,我试图通过这样做从游戏对象制作一个预制件:

GameObject Res = GameObject.Find("Object");
UnityEditor.PrefabUtility.CreatePrefab("Assets/Temporary/Object.prefab", Res);

但是它让我想起了这个错误:

  

名称`UnityEditor'在当前上下文中不存在

我试图做的是当用户按下一个键时它会将对象保存为预制,所以我可以在游戏后期进行检索。

1 个答案:

答案 0 :(得分:3)

UnityEditor命名空间中的任何内容都不能在构建中使用。 PrefabUtility.CreatePrefab来自UnityEditor命名空间,因此只能 在编辑器中使用。这就是您在尝试构建项目时遇到错误的原因。

至于保存GameObjects,只保存需要保存的内容。重要的是,获取附加到GameObject的组件然后序列化并保存它们的值。您可以将其序列化为二进制,xml或json。如果你想把它保存为json,This会让你开始。