// ---- CONSTRUCTORS & DESTRUCTOR ------------------------------------------------------------------------------ internal BoneAnimData(ResFileLoader loader, BoneAnimFlagsBase flags) { Flags = 0; // Never in files. Scale = flags.HasFlag(BoneAnimFlagsBase.Scale) ? loader.ReadVector3F() : Vector3F.Zero; Rotate = flags.HasFlag(BoneAnimFlagsBase.Rotate) ? loader.ReadVector4F() : Vector4F.Zero; Padding = 0; // Never in files. Translate = flags.HasFlag(BoneAnimFlagsBase.Translate) ? loader.ReadVector3F() : Vector3F.Zero; }
internal void Save(ResFileSaver saver, BoneAnimFlagsBase flags) { if (flags.HasFlag(BoneAnimFlagsBase.Scale)) { saver.Write(Scale); } if (flags.HasFlag(BoneAnimFlagsBase.Rotate)) { saver.Write(Rotate); } if (flags.HasFlag(BoneAnimFlagsBase.Translate)) { saver.Write(Translate); } }