public Vector3 GetBoneByIndex(int index) { var fields = this.Fields.Values.Cast <BonesField>(); if (fields.Count(x => x.Offset == index) == 0) { return(Vector3.Zero); } BonesField field = fields.First(x => x.Offset == index); foreach (string name in this.Fields.Keys) { if (this.Fields[name] == field) { return(ReadFieldProxy <Vector3>(name)); } } return(Vector3.Zero); }
protected void AddBone(string name, int index) { Fields[name] = new BonesField(index); }