public YAMLNode ExportYAML(IExportContainer container) { YAMLMappingNode node = new YAMLMappingNode(); node.AddSerializedVersion(ToSerializedVersion(container.ExportVersion)); node.Add(AdditiveReferencePoseClipName, AdditiveReferencePoseClip.ExportYAML(container)); node.Add(AdditiveReferencePoseTimeName, AdditiveReferencePoseTime); node.Add(StartTimeName, StartTime); node.Add(StopTimeName, StopTime); node.Add(OrientationOffsetYName, OrientationOffsetY); node.Add(LevelName, Level); node.Add(CycleOffsetName, CycleOffset); node.Add(HasAdditiveReferencePoseName, HasAdditiveReferencePose); node.Add(LoopTimeName, GetLoopTime(container.Version)); node.Add(LoopBlendName, LoopBlend); node.Add(LoopBlendOrientationName, LoopBlendOrientation); node.Add(LoopBlendPositionYName, LoopBlendPositionY); node.Add(LoopBlendPositionXZName, LoopBlendPositionXZ); node.Add(KeepOriginalOrientationName, KeepOriginalOrientation); node.Add(KeepOriginalPositionYName, KeepOriginalPositionY); node.Add(KeepOriginalPositionXZName, KeepOriginalPositionXZ); node.Add(HeightFromFeetName, HeightFromFeet); node.Add(MirrorName, Mirror); return(node); }
public void Read(AssetReader reader) { if (HasAdditiveReferencePoseClip(reader.Version)) { AdditiveReferencePoseClip.Read(reader); AdditiveReferencePoseTime = reader.ReadSingle(); } StartTime = reader.ReadSingle(); StopTime = reader.ReadSingle(); OrientationOffsetY = reader.ReadSingle(); Level = reader.ReadSingle(); CycleOffset = reader.ReadSingle(); if (HasHasAdditiveReferencePose(reader.Version)) { HasAdditiveReferencePose = reader.ReadBoolean(); } if (HasLoopTime(reader.Version)) { LoopTime = reader.ReadBoolean(); } LoopBlend = reader.ReadBoolean(); LoopBlendOrientation = reader.ReadBoolean(); LoopBlendPositionY = reader.ReadBoolean(); LoopBlendPositionXZ = reader.ReadBoolean(); KeepOriginalOrientation = reader.ReadBoolean(); KeepOriginalPositionY = reader.ReadBoolean(); KeepOriginalPositionXZ = reader.ReadBoolean(); HeightFromFeet = reader.ReadBoolean(); Mirror = reader.ReadBoolean(); if (HasKeepAdditionalBonesAnimation(reader.Version)) { KeepAdditionalBonesAnimation = reader.ReadBoolean(); } reader.AlignStream(); }
public IEnumerable <Object> FetchDependencies(ISerializedFile file, bool isLog = false) { if (IsReadAdditiveReferencePoseClip(file.Version)) { yield return(AdditiveReferencePoseClip.FetchDependency(file, isLog, () => nameof(AnimationClipSettings), AdditiveReferencePoseClipName)); } }