猿问

LibGDX ParticleEffectPool 问题

我ParticleEffectPool 在 libGDX 中遇到问题- 第一个效果没有显示,但为什么它在那之后起作用?


这是设置它的代码:


 destroyEffect = new ParticleEffect();

 destroyEffect.load(Gdx.files.internal("destroy.txt"), Gdx.files.internal(""));


 pool = new ParticleEffectPool(destroyEffect, 10, 100);

 activeEffects = new Array<ParticleEffectPool.PooledEffect>();

当想要显示效果时,调用了这些调用:


ParticleEffectPool.PooledEffect effect = pool.obtain();


if (effect != null) {

  effect.setPosition(x, y);

  activeEffects.add(effect);

}

在渲染()期间:


for (int i = 0; i < activeEffects.size;) {

    ParticleEffectPool.PooledEffect effect = activeEffects.get(i);


    if (effect.isComplete()) {

       pool.free(effect);

       activeEffects.removeIndex(i);

    }

    else {

      effect.draw(batch, deltaTime);

      i++;

    }

}

这对我来说似乎很简单,但第一次不起作用。


米脂
浏览 171回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答