put rotation and position update together