Java 水平翻转(X)一个ParticleEffect[Libgdx]

Java 水平翻转(X)一个ParticleEffect[Libgdx],java,libgdx,particles,Java,Libgdx,Particles,我得到了一个粒子效应,它在一个组中 shellParticle = new ParticleEffect(); shellParticle.load(Gdx.files.internal("shell13"),Gdx.files.internal("")); shellParticle.getEmitters().first().setPosition(0,0); shellParticle.scaleEffect(0.3f); 我需要它水平翻转,但它只包含函数fli

我得到了一个粒子效应,它在一个组中

 shellParticle = new ParticleEffect();
    shellParticle.load(Gdx.files.internal("shell13"),Gdx.files.internal(""));
    shellParticle.getEmitters().first().setPosition(0,0);
    shellParticle.scaleEffect(0.3f);
我需要它水平翻转,但它只包含函数
flipY
setFlip(boolx,booly)

setFlip(真、假)什么也不做

flipY()
实际上是垂直翻转它。
我也不能减去它自己的宽度*2,因为它没有…

设置粒子的负比例

    shellParticle.scaleEffect(-1f);
然后垂直翻转它

    shellParticle.flipY();

这似乎是由于缺少来自libgxapi部分的信息。
setFlip
方法将翻转粒子精灵(对于已发射的粒子和将来的粒子)。
flipY()
将emmiter设置的90%全部修改为负值 但是,如果将某些属性设置为负值,则会得到
flipX()
方法。 事实上,你想对粒子做的每一个改变都应该用Emmiter属性来做,x和y位置除外

   private void flipX(){


    emmiter.getAngle().setHigh(emmiter.getAngle().getHighMin(),emmiter.getAngle().getHighMax());
    emmiter.getAngle().setLow(emmiter.getAngle().getLowMin(),emmiter.getAngle().getLowMax());

    emmiter.getGravity().setHigh(emmiter.getGravity().getHighMin(),emmiter.getGravity().getHighMax());
    emmiter.getGravity().setLow(emmiter.getGravity().getLowMin(),emmiter.getGravity().getLowMax());

    emmiter.getWind().setHigh(-emmiter.getWind().getHighMin(),-emmiter.getWind().getHighMax());
    emmiter.getWind().setLow(-emmiter.getWind().getLowMin(),-emmiter.getWind().getLowMax());

    emmiter.getRotation().setHigh(-emmiter.getRotation().getHighMin(),-emmiter.getRotation().getHighMax());
    emmiter.getRotation().setLow(-emmiter.getRotation().getLowMin(),-emmiter.getRotation().getLowMax());

    emmiter.getYOffsetValue().setLow(emmiter.getYOffsetValue().getLowMin(),emmiter.getYOffsetValue().getLowMax());

    emmiter.getXOffsetValue().setLow(emmiter.getXOffsetValue().getLowMin(),emmiter.getXOffsetValue().getLowMax());

}

我希望它能帮助一些人。

给效果一个负刻度?这也会使它垂直旋转,也会使它垂直翻转