public static void MenuSavePbObject() { pb_Object[] selection = pbUtil.GetComponents<pb_Object>(Selection.transforms); int len = selection.Length; if(len < 1) return; string path = ""; if(len == 1) path = EditorUtility.SaveFilePanel("Save ProBuilder Object", "", selection[0].name, "pbo");// "Save ProBuilder Object to File."); else path = EditorUtility.SaveFolderPanel("Save ProBuilder Objects to Folder", "", ""); foreach(pb_Object pb in selection) { //Creates a new pb_SerializableObject object. pb_SerializableObject obj = new pb_SerializableObject(pb); //Opens a file and serializes the object into it in binary format. Stream stream = File.Open( len == 1 ? path : path + pb.name + ".pbo", FileMode.Create); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, obj); stream.Close(); } }
public static void MenuSavePbObject() { pb_Object[] selection = pbUtil.GetComponents <pb_Object>(Selection.transforms); int len = selection.Length; if (len < 1) { return; } string path = ""; if (len == 1) { path = EditorUtility.SaveFilePanel("Save ProBuilder Object", "", selection[0].name, "pbo"); // "Save ProBuilder Object to File."); } else { path = EditorUtility.SaveFolderPanel("Save ProBuilder Objects to Folder", "", ""); } if (path == "" || !path.EndsWith(".pbo")) { return; } foreach (pb_Object pb in selection) { //Creates a new pb_SerializableObject object. pb_SerializableObject obj = new pb_SerializableObject(pb); //Opens a file and serializes the object into it in binary format. Stream stream = File.Open(len == 1 ? path : path + pb.name + ".pbo", FileMode.Create); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, obj); stream.Close(); } }
public bool Equals(pb_SerializableObject other) { return vertices.SequenceEqual(other.vertices) && uv.SequenceEqual(other.uv) && color.SequenceEqual(other.color) && pb_UpgradeKitUtils.FacesAreEqual(faces, other.faces); }