//============================================================ // <T>加载配置信息。</T> // // @param config 配置信息 //============================================================ public void LoadModelConfig(FXmlNode config) { // 读取属性信息 _boneId = config.GetInteger("bone_id"); _bone = _model.Skeleton.Bones.Get(_boneId); // 读取所有子节点 foreach (FXmlNode node in config.Nodes) { switch (node.Name) { case "LocalMatrix": _localMatrix.LoadSimpleAngleConfig(node); break; case "WorldMatrix": _worldMatrix.LoadSimpleAngleConfig(node); break; case "Types": break; case "Frames": case "FrameCollection": LoadFrameListConfig(node); break; } } }
//============================================================ // <T>加载配置信息。</T> // // @param config 配置信息 //============================================================ public void LoadModelConfig(FXmlNode xconfig) { // 读取根骨骼 foreach (FXmlNode node in xconfig.Nodes) { if (node.IsName("Bone")) { FDrBone bone = new FDrBone(_model); bone.LoadModelConfig(node); _roots.Push(bone); } } // 调整骨骼编号 int count = _bones.Count; for (int n = 0; n < count; n++) { FDrBone bone = _bones.Value(n); _adjustBones.Push(bone); bone.AdjustId = n; } }