无论我是否放置start()方法,粒子发射器是否以相同的方式运行,那么start()方法的用途是什么。
答案 0 :(得分: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()
,它是不言自明的(如果已经运行此发射器,则重新启动它。)
我希望能有所帮助。