Проблема с корутной

Уже ранее показывал этот код:

private IEnumerator OnL() {
    WaitForSeconds secE = new WaitForSeconds(0.01f),
                   secF = new WaitForSeconds(0.5f);
    while (h.e < this.e) {
        h.e += 0.2f;
        yield return secE;
    }
    while (h.f < this.f) {
        h.f += 0.2f;
        yield return secF;
    }
}

Происходит проблема на мобиле, выражается она тем, что она медленно начинает работать.
На компе, она буквально за пол секунды увеличивает значения.
А на мобиле, это секунд за 5, а то и больше, почему так происходит?
Данный метод активируется через метод:

public void OnS() {
    StartCoroutine(OnL());
}

А этот метод запускается по кнопке, ведь ничего сложного нет в этих методах, а почему такая огромная разница и как с этим бороться?
Возможно FPS проседает, но тут Update не используется, все срабатывает в циклах.
Как быть в такой ситуации и как это исправить?

Знатоки выручайте!
Уже 3 день не могу разобраться никак.


Ответы (0 шт):