Ну Вам виднее. Только у вас будет неравномерное перемещение, т.к. 2 обновления по 2000 а одно 1000. Следовательно deltaTime для следующей первой группы в 2000 будет меньше в 2 раза.
float deg2rad=rot*0.0174532925f;
это можно так:
float deg2rad=rot*Mathf.Deg2Rad;
а еще можно
int end=block+updates;
if(end>cube.Length)end=cube.Length;
заменить на
int end= Mathf.Clamp(block+updates,0,cube.Length);