Что делает метод elementEmitter.start() в классе эмиттера частиц?
Ставлю ли я метод start() или нет, мой эмиттер частиц работает одинаково, так что за метод start().
1 ответ
Если вы посмотрите на исходный код класса ParticleEffect, а затем посмотрите на метод start, вы увидите это -
public void start () {
for (int i = 0, n = emitters.size; i < n; i++)
emitters.get(i).start();
}
По сути, это означает, что он проходит через все эмиттеры и вызывает метод ParticleEmitter # start.
Теперь давайте посмотрим на метод запуска ParticleEmitter.
public void start () {
firstUpdate = true;
allowCompletion = false;
restart();
}
В основном из метода, вы можете видеть, что его установка firstUpdate
логическое значение true, что означает "это первое обновление", т.е. мы будем что-то делать впервые (посмотрите в исходном коде, чтобы увидеть, где используется логическое значение)
Следующая строка, это настройка allowCompletion
в false, что означает, что если эмиттер уже выполнялся, не позволяйте ему завершиться (проверьте исходный код, чтобы увидеть, где используется логическое значение)
Последний звонок restart()
что само собой разумеется (перезапустите этот излучатель, если он уже работал.)
Я надеюсь, что это помогло.