fixed timer problems by querying device time every animation loop