added drag
split calulation across frames