Suponiendo dos cosas:
1.- Que no hay un orden definido para la ejecución de la función Update() y que si se necesita un orden específico, puede definirlo usted mismo con el orden de ejecución del script como se especifica aquí , y aquí .
2.- Que los gameobjects no se actualicen según su jerarquía como se explica aquí
Algo que no pude aclarar de la documentación es si no establece ningún orden para la ejecución del script, una vez que Unity lo establece 'aleatoriamente', si este orden permanece inalterado durante la ejecución del juego o si el orden de ejecución de la actualización puede cambio en el tiempo.
Si no especifica nada, el orden no será coherente. Si desea que un script específico se ejecute antes que otros, TIENE que usar el orden de ejecución del script o usar una matriz sugerida en su publicación vinculada.