libGDX粒子发射器的无限持续时间

时间:2014-06-01 04:59:26

标签: libgdx

我一直试图用libGDX做一些火焰粒子发射器。

我下载了一个示例(http://pastebin.com/cNWs0tt1#)。它看起来很好,但它最终结束(灭火),然后重新开始。我在文件中看到的是持续时间是60000ms。所以他们依靠提高数字。

嗯,那是蹩脚的。我尝试将持续时间设为0,这当然不会起作用,因为它只是一遍又一遍地死去。

那么如何制作无限持续时间的粒子发射器呢?

2 个答案:

答案 0 :(得分:5)

您可以将continous - 标志设置为true,效果将反复开始。

在编辑器中:

set particle effect to continous

或者在源文件中:

- Options - 
attached: false
continuous: true <----------------------------
aligned: false
additive: true
behind: false

答案 1 :(得分:2)

我找到了一个简单的解决方法来解决你想要完成的事情。

effect.findEmitter("youremitter").durationTimer = 0;

如果每次渲染效果时都调用此方法,则可以将每个发射器重置为其启动持续时间计时器。我测试了它,似乎工作得非常好。

请注意,您需要为每个发射器调用此行。例如,如果你的火箭飞船具有火焰/烟雾粒子效果,你应该这样做。

public void render(float delta) {
    effect.findEmitter("fire").durationTimer = 0;
    effect.findEmitter("smoke").durationTimer = 0;
    // Render your particle effect here
}

我希望这有帮助,祝你好运!