public Particle Lerp(Particle other, float interpolation) { return(new Particle { Position = Position.Lerp(other.Position, interpolation), Acceleration = Acceleration.Lerp(other.Acceleration, interpolation), Rotation = Rotation.Lerp(other.Rotation, interpolation), CurrentMovement = CurrentMovement.Lerp(other.CurrentMovement, interpolation), ElapsedTime = ElapsedTime.Lerp(other.ElapsedTime, interpolation), Size = Size.Lerp(other.Size, interpolation), Color = Color.Lerp(other.Color, interpolation), IsActive = IsActive && other.IsActive && ElapsedTime < other.ElapsedTime, CurrentUV = other.CurrentUV, Material = other.Material, CurrentFrame = other.CurrentFrame, }); }