使用粒子效果

时间:2013-07-23 11:21:37

标签: libgdx

我使用libgdx使用粒子效果我的游戏。但是效果在很短的时间内显示出来,然后就消失了。但是我想长时间或在我的控制下显示我的效果。 我的代码在我的游戏屏幕类中给出......

ParticleEffectPool waterEffectPool;
Array<PooledEffect> effects = new Array<PooledEffect>();
ParticleEffect waterEffect;
...
...
waterEffect = new ParticleEffect();
    waterEffect.load(Gdx.files.internal("data/runonwater"), Gdx.files.internal("data"));
    waterEffectPool = new ParticleEffectPool(waterEffect, 1, 5);
    //for(int i = 0; i <= waterEffectPool.max; i++){
        PooledEffect effect = waterEffectPool.obtain();
        effect.setPosition(150, 130);
        effects.add(effect);

并在render方法中我用它来渲染

for(int i = effects.size - 1; i >= 0; i--){
        PooledEffect effect = effects.get(i);
        effect.draw(spriteBatch, deltaTime);
        if(effect.isComplete()){
            effect.free();
            effects.removeIndex(i);
        }
    }

1 个答案:

答案 0 :(得分:1)

我已经在上面的评论部分回答了这个问题,但仍然在这里写了这个问题,因为它可以被接受(正如P.T.所建议的那样) 如果您正在使用粒子编辑器,那么可以选择天气来设置此效果连续。将连续设置为true,问题将得到解决。

@ P.T。是的,你是对的。从现在开始记得它:)