Sprite Sheet Generator Grátis: Gerador para Empacotar Frames
Sprite sheet generator grátis com os mesmos 12 frames: Free Texture Packer, TexturePacker Essential, Aseprite e atlas da engine, em grid ou packed com JSON.
Sprite Sheet Generator Grátis: Gerador para Empacotar Frames
Um sprite sheet generator (gerador de sprite sheet) pega uma pasta de quadros soltos e entrega uma imagem única mais, opcionalmente, um arquivo de dados com a posição de cada quadro. As opções grátis que funcionam em 2026 são o Free Texture Packer, o modo Essential do TexturePacker (só para uso não comercial), o Export Sprite Sheet do Aseprite para quem já usa o programa, o ImageMagick na linha de comando e o atlas da própria engine.
Para comparar de verdade, este post empacota os mesmos 12 quadros de uma corrida (64 x 64 pixels cada) em cada ferramenta e mostra o que sai, o que trava e quando você nem precisa de gerador externo.
O que um gerador de sprite sheet faz que a pasta de PNGs não faz
Uma pasta com run_01.png até run_12.png funciona na engine: dá para arrastar os 12 arquivos para uma animação. O gerador acrescenta quatro coisas:
- Uma textura só. A placa de vídeo troca menos de textura ao desenhar, o que reduz chamadas de desenho quando há muitos sprites na tela.
- Organização. Uma animação é um arquivo, não doze.
- Corte de transparência (trim). O gerador remove as bordas vazias de cada quadro e guarda o deslocamento no arquivo de dados. A folha fica menor.
- Padding e extrude. Espaço e repetição de borda entre quadros, para evitar linhas finas no jogo quando a textura é filtrada.
Se você está começando e tem uma animação só, a pasta de PNGs não é errada. O gerador começa a valer quando há várias animações, vários personagens ou plataforma móvel com memória apertada. Para a lógica de grade e células, veja o post sobre sprite sheet.
Sprite sheet generator grátis: Free Texture Packer passo a passo
O Free Texture Packer é gratuito e de código aberto, com versão web (free-tex-packer.com) e desktop. Um aviso honesto: o autor diz no repositório que não está mais evoluindo o app, só corrigindo bugs críticos, e a última versão publicada no GitHub é a 0.6.7. Ele funciona, mas não espere novidades.
Com os 12 quadros da corrida:
- Abra a versão web e clique em Add images (ou arraste a pasta).
- Os 12 quadros aparecem na lista e a folha é montada em tempo real.
- Ajuste o Padding (2 pixels para arte filtrada; 0 para pixel art com filtro Nearest e grade).
- Decida o trim: ligado, a folha fica menor, mas cada quadro passa a depender do JSON para voltar à posição certa.
- Desligue a rotação de sprites se a sua engine ou o seu importador não suportar quadros girados.
- Em Format, escolha o formato de dados. O projeto lista JSON, XML, CSS e formatos para Pixi.js, Godot, Phaser e Cocos2d, e aceita modelos próprios.
- Export baixa o PNG e o arquivo de dados.
Resultado com os 12 quadros de 64 x 64 com trim ligado: uma folha compacta e quadros de tamanhos diferentes. Sem trim e com layout simples, os quadros ficam alinhados, mas o empacotamento não garante grade regular.
TexturePacker versão grátis: o que libera e o que trava
O TexturePacker é o packer comercial mais conhecido (versão 8.3.0, de setembro de 2026). Pela página oficial de comparação de licenças, conferida em outubro de 2026, o modo gratuito Essential:
- Libera: empacotamento básico, formatos de dados JSON e XML e os específicos de engine, PNG e JPG, interface com prévia de animação, smart folders e cliente de linha de comando.
- Não libera: layout Grid/Strip, algoritmos MaxRects e Polygon, restrições de tamanho, multipack, filtros de sprite, todas as opções de otimização de imagem, editor de pivô, editor de 9-slice e divisor de sprite sheet.
- Licença: uso não comercial apenas. Para jogo que vai ser vendido ou monetizado, é preciso licença paga.
Na prática, para os 12 quadros de corrida, o Essential empacota e exporta, mas sem a opção de grade e sem o editor de pivô. Para estudo e protótipo, serve. Para o seu jogo comercial, não.
Export Sprite Sheet do Aseprite como gerador embutido
Se você anima no Aseprite, ele já é o gerador. Não há motivo para exportar 12 PNGs e empacotar em outro programa.
File > Export > Export Sprite Sheet, com os 12 quadros da corrida:
- Layout: Sheet Type em By Rows com Fixed # of Columns em 6 gera 6 x 2 quadros, grade perfeita de 384 x 128 pixels. Packed gera uma folha compacta, como um packer. Merge Duplicates junta quadros idênticos numa célula só.
- Sprite: escolha camadas e tags. Com Split Tags, cada animação pode virar uma folha separada.
- Borders: Border Padding (margem na borda da folha), Spacing (espaço entre quadros), Inner Padding (espaço dentro de cada célula), Trim Sprite e Trim Cels (cortar transparência), Extrude (repetir a borda do quadro em 1 pixel).
- Output: PNG e JSON Data em Hash ou Array, com metadados de tags, camadas e slices. O JSON inclui a duração de cada frame.
Pela linha de comando, as mesmas opções existem como --sheet, --sheet-type, --border-padding, --shape-padding, --inner-padding, --trim, --extrude, --data e --format json-hash ou json-array, o que permite exportar todas as animações com um script.
O Aseprite é pago. Se você ainda não tem, o guia de Aseprite para jogos ajuda a decidir; se não for comprar, LibreSprite e Pixelorama (grátis) também exportam sprite sheet.
Empacotar quadros é um problema resolvido por qualquer uma dessas ferramentas. O gargalo real vem antes: ter quadros consistentes para empacotar, com mesmo tamanho, mesmo pivô e animações que funcionam juntas no jogo. Sem isso, o melhor gerador do mundo só organiza o problema numa imagem bonita.
Quando a produção da arte segue um padrão, o empacotamento vira um passo automático no fim, não uma sessão de ajustes.
Grid fixo ou packed: qual formato a sua engine lê
Grade fixa (grid). Todas as células do mesmo tamanho, na mesma ordem. A engine fatia sozinha, sem arquivo de dados:
- Unity: Sprite Mode Multiple e, no Sprite Editor, Slice > Grid By Cell Size com o tamanho da célula e o padding.
- Godot: no painel SpriteFrames de um AnimatedSprite2D, a opção de adicionar quadros de uma sprite sheet pede quadros na horizontal e vertical, separação e offset. Ou um Sprite2D com hframes e vframes.
Packed. Quadros de tamanhos diferentes encaixados para ocupar menos espaço. A engine só sabe onde cada quadro está lendo o arquivo de dados. Nem Unity nem Godot leem o JSON de um packer nativamente: você precisa de um importador (plugin ou script).
Atlas da engine. Os dois motores empacotam sozinhos, de outro jeito. A Unity tem o Sprite Atlas, que junta sprites já importados numa textura no build, com Padding padrão de 4 pixels. Na Godot, o importador de texturas tem um modo de atlas que junta várias imagens. Nesses casos, você mantém os quadros (ou folhas em grade) separados no projeto e deixa a engine otimizar.
Regra prática: grade para animação de personagem, packed ou atlas da engine para muitos sprites estáticos de tamanhos variados (itens, UI, decoração).
Arquivo de dados JSON: por que guardar junto com o PNG
Mesmo se você usa grade, salve o JSON quando o gerador oferecer. Um JSON típico de Aseprite em formato Hash traz, para cada quadro:
frame: posição e tamanho na folha (x,y,w,h).rotated: se o quadro foi girado no empacotamento.trimmed,spriteSourceSizeesourceSize: quanto foi cortado e o tamanho original, para recolocar o quadro no lugar.duration: duração do quadro em milissegundos.
E, em meta, as tags (nome da animação, quadro inicial e final, direção). Com isso, um script de importação recria as animações na engine sozinho. Sem o JSON, se a folha for gerada de novo com outra ordem, você refaz o fatiamento à mão.
Guarde o JSON ao lado do PNG, com o mesmo nome (heroi_run.png e heroi_run.json), e versione os dois juntos.
Erros comuns: trim, rotação de frame e pivô perdido
Trim sem dados. O gerador cortou as bordas e você fatiou a folha por grade. Cada quadro fica de um tamanho e o personagem pula. Ou use grade sem trim, ou leia o JSON.
Rotação ligada sem suporte. O packer girou quadros para encaixar melhor, e o importador não desfaz. Aparece um personagem deitado no meio da corrida. Desligue a rotação se não tem certeza.
Pivô perdido. Com trim, o centro de cada quadro muda. Se o pivô era "centro do quadro", ele passa a ficar em lugares diferentes. Defina o pivô nos pés e use o spriteSourceSize para recalcular, ou não use trim em personagem.
Padding sem extrude em arte filtrada. O espaço vazio entre quadros entra no filtro bilinear e aparece uma linha fina na borda. Extrude de 1 pixel resolve.
Licença do gerador. Usar o TexturePacker Essential num jogo comercial viola a licença. Para projeto comercial grátis, Aseprite (se já tem), Free Texture Packer ou ImageMagick.
Próximo passo
Pegue uma animação sua e gere a folha em duas ferramentas desta lista: uma em grade (Aseprite ou ImageMagick) e uma packed (Free Texture Packer). Importe as duas na engine e compare o trabalho de configurar cada uma. Para jogo pequeno, a grade quase sempre vence. Se os seus quadros vêm de um GIF, o post sobre converter GIF em sprite sheet mostra o passo anterior.
Perguntas frequentes
Qual o melhor gerador de sprite sheet grátis?
Depende de onde vêm os frames. Se você anima no Aseprite, o Export Sprite Sheet dele já é o gerador. Se tem uma pasta de PNGs de outro programa, o Free Texture Packer (web ou desktop) e um comando do ImageMagick resolvem de graça. O TexturePacker gratuito só serve para uso não comercial.
O TexturePacker é grátis?
Tem o modo Essential gratuito, mas, segundo a CodeAndWeb em outubro de 2026, ele é só para projetos não comerciais e não inclui o layout em grade nem o algoritmo MaxRects. Para jogo comercial é preciso comprar licença.
Sprite sheet em grade ou packed: qual usar?
Grade quando todos os quadros têm o mesmo tamanho e você quer fatiar na engine sem arquivo de dados. Packed quando há muitos sprites de tamanhos diferentes e a economia de espaço importa, sempre com o JSON junto, porque a engine precisa dele para achar cada quadro.
Unity e Godot leem o JSON do packer?
Não sem ajuda. As duas fatiam uma sprite sheet em grade nativamente. Para ler o JSON de um packer, você precisa de um importador (plugin ou script). Se o jogo é simples, a folha em grade evita essa dependência.

