Example usage for com.badlogic.gdx.tools.imagepacker TexturePacker TexturePacker

List of usage examples for com.badlogic.gdx.tools.imagepacker TexturePacker TexturePacker

Introduction

In this page you can find the example usage for com.badlogic.gdx.tools.imagepacker TexturePacker TexturePacker.

Prototype

public TexturePacker(Settings settings) 

Source Link

Usage

From source file:com.sertaogames.cactus2d.misc.TiledMapPacker.java

License:Apache License

private void packTileSet(TileSet set, FileHandle inputDirHandle, File outputDir, Settings settings)
        throws IOException {
    BufferedImage tile;/*from  w ww.  ja v  a2  s.c o m*/
    Vector2 tileLocation;
    TileSetLayout packerTileSet;
    Graphics g;

    packer = new TexturePacker(settings);

    TileSetLayout layout = new TileSetLayout(set, inputDirHandle);

    for (int gid = layout.firstgid, i = 0; i < layout.numTiles; gid++, i++) {
        tileLocation = layout.getLocation(gid);
        tile = new BufferedImage(layout.tileWidth, layout.tileHeight, BufferedImage.TYPE_4BYTE_ABGR);

        g = tile.createGraphics();
        g.drawImage(layout.image, 0, 0, layout.tileWidth, layout.tileHeight, (int) tileLocation.x,
                (int) tileLocation.y, (int) tileLocation.x + layout.tileWidth,
                (int) tileLocation.y + layout.tileHeight, null);

        if (isBlended(tile))
            setBlended(gid);

        packer.addImage(tile, removeExtension(removePath(set.imageName)) + "_" + i);
    }

    File outputFile = getRelativeFile(outputDir, removeExtension(set.imageName) + " packfile");
    outputFile.getParentFile().mkdirs();
    packer.process(outputFile.getParentFile(), outputFile, removeExtension(removePath(set.imageName)));
}

From source file:com.weimingtom.iteye.simplerpg.tiled.TiledMapPacker.java

License:Apache License

private void packTileSet(TileSet set, IntArray usedIds, FileHandle inputDirHandle, File outputDir,
        Settings settings) throws IOException {
    BufferedImage tile;//ww w  .  j  a  v  a  2  s.c  om
    Vector2 tileLocation;
    TileSetLayout packerTileSet;
    Graphics g;

    packer = new TexturePacker(settings);

    TileSetLayout layout = new TileSetLayout(set, inputDirHandle);

    for (int gid = layout.firstgid, i = 0; i < layout.numTiles; gid++, i++) {
        if (usedIds != null && !usedIds.contains(gid)) {
            System.out.println("Stripped Id: " + gid);
            continue;
        }

        tileLocation = layout.getLocation(gid);
        tile = new BufferedImage(layout.tileWidth, layout.tileHeight, BufferedImage.TYPE_4BYTE_ABGR);

        g = tile.createGraphics();
        g.drawImage(layout.image, 0, 0, layout.tileWidth, layout.tileHeight, (int) tileLocation.x,
                (int) tileLocation.y, (int) tileLocation.x + layout.tileWidth,
                (int) tileLocation.y + layout.tileHeight, null);

        if (isBlended(tile))
            setBlended(gid);

        packer.addImage(tile, removeExtension(removePath(set.imageName)) + "_" + i);
    }

    File outputFile = getRelativeFile(outputDir, removeExtension(set.imageName) + " packfile");
    outputFile.getParentFile().mkdirs();
    packer.process(outputFile.getParentFile(), outputFile, removeExtension(removePath(set.imageName)));
}