void SaveMarkup(GameObject obj) { Voxeme voxml = new Voxeme (); // assign VoxML values // PRED voxml.Lex.Pred = mlPred; voxml.Lex.Type = System.String.Join("*",mlTypes.ToArray()); // TYPE voxml.Type.Head = mlHead; for (int i = 0; i < mlComponentCount; i++) { voxml.Type.Components.Add (new Component()); voxml.Type.Components[i].Value = mlComponents[i]; } voxml.Type.Concavity = mlConcavity; List<string> rotatSyms = new List<string> (); if (mlRotatSymX) { rotatSyms.Add ("X"); } if (mlRotatSymY) { rotatSyms.Add ("Y"); } if (mlRotatSymZ) { rotatSyms.Add ("Z"); } voxml.Type.RotatSym = System.String.Join(",", rotatSyms.ToArray()); List<string> reflSyms = new List<string> (); if (mlReflSymXY) { reflSyms.Add ("XY"); } if (mlReflSymXZ) { reflSyms.Add ("XZ"); } if (mlReflSymYZ) { reflSyms.Add ("YZ"); } voxml.Type.ReflSym = System.String.Join(",", reflSyms.ToArray()); // HABITAT for (int i = 0; i < mlIntrHabitatCount; i++) { voxml.Habitat.Intrinsic.Add (new Intr()); voxml.Habitat.Intrinsic[i].Name = mlIntrHabitats[i].Split(new char[]{'='})[0]; voxml.Habitat.Intrinsic[i].Value = mlIntrHabitats[i].Split(new char[]{'='})[1]; } for (int i = 0; i < mlExtrHabitatCount; i++) { voxml.Habitat.Extrinsic.Add (new Extr()); voxml.Habitat.Extrinsic[i].Name = mlExtrHabitats[i].Split(new char[]{'='})[0]; voxml.Habitat.Extrinsic[i].Value = mlExtrHabitats[i].Split(new char[]{'='})[1]; } // AFFORD_STR for (int i = 0; i < mlAffordanceCount; i++) { voxml.Afford_Str.Affordances.Add (new Affordance()); voxml.Afford_Str.Affordances[i].Formula = mlAffordances[i]; } // EMBODIMENT voxml.Embodiment.Scale = mlScale; voxml.Embodiment.Movable = mlMovable; voxml.Save (obj.name+".xml"); // voxml.SaveToServer (obj.name + ".xml"); }