LibGDX Tools

https://libgdx.badlogicgames.com/tools.html

Texture Packer

https://code.google.com/archive/p/libgdx-texturepacker-gui/downloads

Génère un fichier d’image et un fichier d’index (pack) pour retrouver les coordonnées des fichiers images.

Dans LibGdx pour utiliser les images :

private TextureAtlas atlas;

Dans le constructeur :

atlas=new TextureAtlas("Boat.pack");

Puis ajouter une fonction :

public TextureAtlas getAtlas(){
    return atlas;
}

Appelez la classe affichant le Spirite avec

player = new Classe_Spirite(world, this);

Et pour retrouver un Sprite dans le fichier :

public ClassSprite (World world, PlayScreen screen){
    super(screen.getAtlas().findRegion("ImageSprite"));
    this.world=world;
    defineSprite();
    SpriteStop=new TextureRegion(getTexture(),0,0,32,22);
    setBounds(0,0,32/PPM,22/PPM);
    setregion(SpriteStop);
}

où SpriteStop => private TextureRegion SpriteStop;

Dans render

game.batch.setProjectionMatrix((gamecam.combined));
game.batch.begin();
player.draw(game.batch);
game.batch.end()

Afin d’associer Box2D au Spirite on positionne le sprite sur les coordonnées de Box2D

public void update(float dt){
    setPosition(b2body.getPosition().x-getWidth()/2, b2body.getPosition().y-getHeight()/2);
}

Pour gérer l’animation du Sprite :

public enum State {FALLING, JUMPING, STANDING, RUNNING};
public State currentState;
public State previousState;
private Animation spriteRun;
private Animation spriteJump;
private boolean runningRight;
private float stateTimer;

Dans le constructeur

currentState=State.STANDING;
previousState=State.STANDING;
stateTimer=0;
runningRight=true;
Array<TextureRegion> frames = new Array<TextureRegion>();
for(int i=1; i<6;i++)
    frames.add(new TextureRegion(getTexture(),i*28,0,28,22));

spriteRun=new Animation(0.1f,frames);
frames.clear();

Dans Update :

 

xxxx

Articles récents
Commentaires récents
fatima dans Bienvenue !
AdminDroid dans Bienvenue !
fatima dans Bienvenue !
Archives
Catégories