Libgdx Android粒子效果第一次无法正常工作

3
我的问题是,粒子效果在安卓设备上启动时需要运行几次才能正常工作。在前几次运行中,它只显示一个粒子,然后在某一刻就会显示太多的粒子,接下来的运行就正常了。 效果不持续,其长度约为500毫秒。它看起来像这样:GIF。它只在安卓设备上表现出这种行为,在桌面上一切都很正常。以下是我使用的代码:
ParticleEffect starsEffect = new ParticleEffect();
starsEffect.load(Gdx.files.internal("particles/stars/effect.p"), Gdx.files.internal("particles/stars"));
starsEffect.setPosition(x, y);
starsEffectActor = new ParticleEffectActor(starsEffect);

stage.addActor(starsEffectActor);

我的ParticleEffectActor类的实现:

public class ParticleEffectActor extends Actor {
    ParticleEffect particleEffect;

    public ParticleEffectActor(ParticleEffect particleEffect) {
        super();
        this.particleEffect = particleEffect;
    }

    @Override
    public void draw(Batch batch, float parentAlpha) {
        particleEffect.draw(batch);
    }

    @Override
    public void act(float delta) {
        super.act(delta);
        particleEffect.update(delta);
    }

    public void start() {
        particleEffect.start();
    }
}
1个回答

2
同样的情况也发生在我身上,但我完全不知道为什么。所以我进行了调试,结果发现只有在粒子效果正在运行时才应该调用ParticleEffect().update(float)
因此,在调用ParticleEffect().start()之后才应该更新效果。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接