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

libGDX粒子发射器的无限持续时间,libgdx,Libgdx,我一直在尝试用libGDX制作一些火粒子发射器 我下载了一个示例()。它看起来不错,但最终会结束(火熄灭),然后重新开始。我在文件中看到,持续时间是60000ms。因此,他们依赖于输入一个较高的数字 好吧,那太差劲了。我试着将持续时间设为0,但这当然不起作用,因为它只是一次又一次地死去 那么,如何制作无限持续时间的粒子发射器呢?我找到了一个简单的解决方法,可以解决您试图实现的问题 effect.findEmitter("youremitter").durationTimer = 0; 如果每次

我一直在尝试用libGDX制作一些火粒子发射器

我下载了一个示例()。它看起来不错,但最终会结束(火熄灭),然后重新开始。我在文件中看到,持续时间是60000ms。因此,他们依赖于输入一个较高的数字

好吧,那太差劲了。我试着将持续时间设为0,但这当然不起作用,因为它只是一次又一次地死去


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

我找到了一个简单的解决方法,可以解决您试图实现的问题

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
}

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

您可以将
continue
-标志设置为true,效果将一次又一次地开始

在编辑器中:

或在源文件中:

- Options - 
attached: false
continuous: true <----------------------------
aligned: false
additive: true
behind: false
-选项-
附:假

continuous(连续):您可以设置一个标志,告诉它是连续的,然后它将在60000毫秒后重复,但您可能会看到它在恢复正常之前关闭一小会儿。我认为最简单的解决方案是将时间增加到更高的值,比如
INTEGER.MAX\u VALUE
。这是站不住脚的,但我不确定还有其他解决办法。我无法创造出任何效果,如果没有它,它将永远保持不变。