что делает метод elementEmitter.start () в классе эмиттера частиц? - PullRequest
0 голосов
/ 16 сентября 2018

независимо от того, положил ли я метод start () или нет, мой эмиттер частиц работает одинаково, так что за метод start ().

1 Ответ

0 голосов
/ 19 сентября 2018

Если вы посмотрите на исходный код класса ParticleEffect, а затем посмотрите на метод start, вы увидите это -

public void start () {
    for (int i = 0, n = emitters.size; i < n; i++)
        emitters.get(i).start();
}

По сути, это означает, что он проходит через все эмиттеры и вызывает ParticleEmitter #Метод запуска.

Теперь давайте рассмотрим метод запуска ParticleEmitter.

public void start () {
    firstUpdate = true;
    allowCompletion = false;
    restart();
}

В основном из метода вы можете видеть, что его значение firstUpdate установлено равным true, что означает «этоэто первое обновление », т.е. мы будем что-то делать в первый раз (загляните в исходный код, чтобы узнать, где используется логическое значение)

В следующей строке это установка allowCompletion в значение false, что означает,если эмиттер уже выполнялся, не позволяйте ему завершиться (проверьте исходный код, чтобы узнать, где используется логическое значение)

Последний вызов - restart(), который не требует пояснений (перезапустите этот эмиттер, еслион уже работал.)

Надеюсь, это помогло.

...