public void Read(AssetReader reader) { DeltaPose.Read(reader); StartX.Read(reader); if (IsReadStopX(reader.Version)) { StopX.Read(reader); } LeftFootStartX.Read(reader); RightFootStartX.Read(reader); if (IsReadMotion(reader.Version)) { MotionStartX.Read(reader); MotionStopX.Read(reader); } if (IsVector3(reader.Version)) { AverageSpeed.Read3(reader); } else { AverageSpeed.Read(reader); } Clip.Read(reader); StartTime = reader.ReadSingle(); StopTime = reader.ReadSingle(); OrientationOffsetY = reader.ReadSingle(); Level = reader.ReadSingle(); CycleOffset = reader.ReadSingle(); AverageAngularSpeed = reader.ReadSingle(); m_indexArray = reader.ReadInt32Array(); if (IsReadAdditionalCurveIndexArray(reader.Version)) { m_additionalCurveIndexArray = reader.ReadInt32Array(); } m_valueArrayDelta = reader.ReadArray <ValueDelta>(); if (IsReadValueArrayReferencePose(reader.Version)) { m_valueArrayReferencePose = reader.ReadSingleArray(); } Mirror = reader.ReadBoolean(); if (IsReadLoopTime(reader.Version)) { LoopTime = reader.ReadBoolean(); } LoopBlend = reader.ReadBoolean(); LoopBlendOrientation = reader.ReadBoolean(); LoopBlendPositionY = reader.ReadBoolean(); LoopBlendPositionXZ = reader.ReadBoolean(); if (IsReadStartAtOrigin(reader.Version)) { StartAtOrigin = reader.ReadBoolean(); } KeepOriginalOrientation = reader.ReadBoolean(); KeepOriginalPositionY = reader.ReadBoolean(); KeepOriginalPositionXZ = reader.ReadBoolean(); HeightFromFeet = reader.ReadBoolean(); reader.AlignStream(AlignType.Align4); }
public void Read(EndianStream stream) { DeltaPose.Read(stream); StartX.Read(stream); if (IsReadStopX) { StopX.Read(stream); } LeftFootStartX.Read(stream); RightFootStartX.Read(stream); if (IsReadMotion) { MotionStartX.Read(stream); MotionStopX.Read(stream); } if (IsVector3) { AverageSpeed3.Read(stream); } else { AverageSpeed4.Read(stream); } Clip.Read(stream); StartTime = stream.ReadSingle(); StopTime = stream.ReadSingle(); OrientationOffsetY = stream.ReadSingle(); Level = stream.ReadSingle(); CycleOffset = stream.ReadSingle(); AverageAngularSpeed = stream.ReadSingle(); m_indexArray = stream.ReadInt32Array(); m_valueArrayDelta = stream.ReadArray <ValueDelta>(); if (IsReadValueArrayReferencePose) { m_valueArrayReferencePose = stream.ReadSingleArray(); } Mirror = stream.ReadBoolean(); LoopTime = stream.ReadBoolean(); LoopBlend = stream.ReadBoolean(); LoopBlendOrientation = stream.ReadBoolean(); LoopBlendPositionY = stream.ReadBoolean(); LoopBlendPositionXZ = stream.ReadBoolean(); if (IsReadStartAtOrigin) { StartAtOrigin = stream.ReadBoolean(); } KeepOriginalOrientation = stream.ReadBoolean(); KeepOriginalPositionY = stream.ReadBoolean(); KeepOriginalPositionXZ = stream.ReadBoolean(); HeightFromFeet = stream.ReadBoolean(); stream.AlignStream(AlignType.Align4); }