2 votes

Combinaison de deux sprites en un seul (Libgdx)

Je voudrais combiner deux sprites en un seul. Par exemple :

private Sprite spriteGirl;
private Sprite spriteSweater;
private Sprite spriteDressed; 
..................................................................
atlas = new TextureAtlas(Gdx.files.internal("data/images.pack"));

spriteGirl = atlas.createSprite("girl");
spriteSweater = atlas.createSprite("sweater");
...................................................................

"spriteSweater" doit être placé sur le sprite "spriteGirl" (à certaines coordonnées). Cette combinaison constitue le sprite "spriteDressed".

Après cela, le sprite résultant "spriteDressed" peut être animé.

Je préférerais déplacer "spriteDressed" plutôt que "spriteGirl" et "spriteSweater" séparément.

Toute aide est la bienvenue.

0voto

nEx.Software Points 4054

Je créerais une classe composite qui contient et gère les sprites dont elle est composée.

public class CompositeSprite {

    Array<Sprite> componentSprites;

    public CompositeSprite() {
        componentSprites = new Array<Sprite>();
    }

    public void addComponentSprite(Sprite sprite) {
        componentSprites.add(sprite);
    }

    // ... other methods left out for brevity

    public void draw(SpriteBatch spriteBatch) {
        for (Sprite sprite : componentSprites) {
            sprite.draw(batch)
        }
    }

}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X