我使用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);
}
}
答案 0 :(得分:1)
我已经在上面的评论部分回答了这个问题,但仍然在这里写了这个问题,因为它可以被接受(正如P.T.所建议的那样) 如果您正在使用粒子编辑器,那么可以选择天气来设置此效果连续。将连续设置为true,问题将得到解决。
@ P.T。是的,你是对的。从现在开始记得它:)