Unidad: retorno de rendimiento de IEnumerator nulo
Actualmente estoy tratando de entender IEnumerator & Coroutine dentro del contexto de Unity y no estoy muy seguro de lo que realiza el "rendimiento de retorno nulo". Por el momento, creo que básicamente hace una pausa y espera el siguiente fotograma y en el siguiente fotograma volverá a realizar la declaración while nuevamente.
Si dejo de lado el "rendimiento de retorno nulo", parece que el objeto se moverá instantáneamente a su destino o tal vez "saltará muchos fotogramas". Así que supongo que mi pregunta es cómo funciona este "retorno de rendimiento nulo" dentro de este ciclo while y por qué es necesario tenerlo.
void Start () {
StartCoroutine(Move());
}
IEnumerator Move(){
while (a > 0.5f){
... (moves object up/down)
yield return null; // <---------
}
yield return new WaitForSeconds(0.5f);
.... (moves object up/down)
StartCoroutine(Move());
}