public static BpBoneData[] Read(string path) { XmlDocument Doc = new XmlDocument(); Doc.Load(path); XmlNode Bp = Doc.SelectSingleNode("BoneProperty"); BpBoneData[] Data = new BpBoneData[int.Parse(Bp.Attributes["Count"].Value)]; for (int i = 0; i < Data.Length; i++) { XmlNode Bone = Bp.ChildNodes[i]; Data[i].Name = Bone.Name; Data[i].Level = int.Parse(Bone.ChildNodes[0].Attributes["Value"].Value); Data[i].ParentBoneIdx = int.Parse(Bone.ChildNodes[1].Attributes["Value"].Value); Data[i].TransMat = toMatrix(Bone.ChildNodes[2].InnerText); Data[i].OffsetMat = toMatrix(Bone.ChildNodes[3].InnerText); Data[i].EulerMode = int.Parse(Bone.ChildNodes[4].Attributes["Value"].Value); Data[i].BoneLayers = int.Parse(Bone.ChildNodes[5].Attributes["Value"].Value); Data[i].BoneFlag = new int[2]; Data[i].BoneFlag[0] = int.Parse(Bone.ChildNodes[6].Attributes["Value"].Value); Data[i].BoneFlag[1] = int.Parse(Bone.ChildNodes[6].Attributes["Value2"].Value); Data[i].LimitAng = toLimitAng(Bone.ChildNodes[7].InnerText); Data[i].Windom_FileName = Bone.ChildNodes[8].Attributes["Text"].Value; Data[i].Windom_Hide = int.Parse(Bone.ChildNodes[9].Attributes["Value"].Value); } return Data; }
public static void Write(BpBoneData[] Data) { }