2
是否可以動態更改粒子發射器使用的Atlas區域?LibGDX - 動態改變粒子發射器的阿特拉斯區域?
我試過......
effect.getEmitters().get(0).setImagePath("[someAtlasRegionName]");
...但它繼續使用效果裝有原來的區域。
似乎有一個.setSprite(Sprite)
方法,但它不適用於TextureAtlas。
謝謝。
是否可以動態更改粒子發射器使用的Atlas區域?LibGDX - 動態改變粒子發射器的阿特拉斯區域?
我試過......
effect.getEmitters().get(0).setImagePath("[someAtlasRegionName]");
...但它繼續使用效果裝有原來的區域。
似乎有一個.setSprite(Sprite)
方法,但它不適用於TextureAtlas。
謝謝。
編輯Sprite
的領域,將其設置爲TextureRegion
作品(Sprite
延伸TextureRegion
,因此它具有所有相關的字段):
Sprite s = effect.getEmitters().get(0).getSprite();
s.setTexture(vessel.getTexture());
s.setU (someAtlasRegion.getU());
s.setU2(someAtlasRegion.getU2());
s.setV (someAtlasRegion.getV());
s.setV2(someAtlasRegion.getV2());
effect.getEmitters.get(0).setImagePath(someRegionName);
編輯:我不知道,如果ParticleEmitter.setImagePath()
事項或不,但我會包括,以防萬一 - 它絕對不會傷害。所以我也補充說。
感謝這個解決方案,MPeti。 – Bumpy