Alternar tema

Cocos Creator e organização de assets com IA: fluxo completo da geração à importação

Easton editorial illustration: 大型资产整理柜, meta 索引签, Atlas 抽屉, 引擎导入滑槽

Na sua cabeça existem incontáveis personagens legais, cenários e itens. Mas o orçamento e o tempo na mão talvez só deem para terminar o rascunho de um personagem. Assets de arte são esse vão enorme entre a ideia e o produto final; é por causa dele que muita ideia de jogo acaba ficando presa no documento.

No fluxo tradicional, um personagem 2D sai do design até o uso real com custo na casa dos milhares e prazo contado em semanas. Agora, ferramentas de IA conseguem resolver personagem, rigging, skinning e animações em 10 minutos, com custo perto de um décimo do processo antigo. Só que aí aparece o problema: como transformar o material gerado por IA em assets utilizáveis no Cocos Creator? Depois de importar, a pasta vira bagunça, a manutenção fica pesada e Draw Calls altos deixam o jogo travando. Eu já caí em todas essas armadilhas.

Este artigo parte da geração de assets de arte com IA e desmonta, passo a passo, a estrutura padrão de pastas do Cocos Creator, as regras de nomenclatura, a criação de atlas e o ajuste de desempenho. No fim, você vai perceber que o caminho do conceito até o uso dentro do motor não precisa ser improvisado.

Fundamentos da estrutura de assets no Cocos Creator

Abra um projeto do Cocos Creator e você verá algumas pastas: assets, library, local, settings e temp. Com tantos diretórios, qual deles é a sua “biblioteca de recursos”?

Só um: assets.

A pasta assets é a única exibida no gerenciador de recursos do editor. Imagens, animações, prefabs e scripts entram todos ali. As outras pastas, como library para cache, local para configuração local, settings para configurações do projeto e temp para arquivos temporários, não precisam ser mexidas. Também não vale sair apagando por curiosidade.

Arquivos meta: a “identidade” de cada asset

Dentro de assets existe uma coisa chata, mas essencial: cada arquivo vem acompanhado de um arquivo .meta. Se você tem um knight.png, ao lado dele precisa existir um knight.png.meta.

Esse arquivo meta é o mecanismo central que o Cocos Creator usa para gerenciar recursos. Ele registra o uuid do asset, as informações de versão e os sub-recursos. Se você apagar o meta, o motor não encontra mais aquele recurso. Se renomear ou mover um asset, o meta precisa acompanhar; caso contrário, as referências quebram.

Na primeira vez que fiz um projeto, achei os arquivos meta bagunçados demais e apaguei tudo de uma vez. Resultado? O projeto inteiro ficou quebrado, e todas as referências viraram “Missing”. Foi uma lição daquelas que ficam gravadas.

Pasta resources: o canal especial para carregamento dinâmico

Dentro de assets existe uma subpasta especial: resources. Recursos colocados ali podem ser carregados dinamicamente por código:

resources.load('sprite-frames/background', cc.SpriteFrame, (err, spriteFrame) => {
    // SpriteFrame carregado dinamicamente
});

Mas resources tem uma pegadinha: no build, o Cocos empacota todos os recursos dessa pasta, usados ou não. Então não enfie tudo em resources. Coloque ali apenas o que realmente precisa de carregamento dinâmico, como textos para troca de idioma ou cenas desbloqueadas conforme o progresso do jogador.

Armadilhas para evitar

Alguns erros comuns:

  • Editar manualmente o arquivo project.json: esse arquivo é mantido automaticamente pelo editor, e mudar na mão costuma dar problema.
  • Apagar a pasta library: depois de apagar, o projeto reconstrói essa pasta ao abrir, mas isso pode demorar bastante; em projetos grandes, alguns minutos.
  • Colocar todos os recursos em resources: o tamanho do build explode e o tempo de carregamento aumenta.
  • Ignorar a sincronização dos arquivos meta: referências quebram, e as imagens dentro de prefabs viram Missing.

Ferramentas práticas para gerar assets de arte com IA

Hoje existem ferramentas de IA para arte por todos os lados. Qual escolher? Pela minha experiência prática, três opções fazem sentido para desenvolvedores independentes.

SOON: geração de animação esquelética em um clique

SOON é uma plataforma de IA focada em animação de personagens para jogos. Você digita uma descrição, como “cavaleiro cartunesco usando armadura, segurando uma espada em postura de combate”, e ela gera personagem, rigging, skinning e ações automaticamente, com exportação em formato Spine.

No fluxo tradicional, design de personagem, rigging, skinning e design de animação exigem profissionais especializados em cada etapa, com prazo contado em semanas. O SOON reduz esse ciclo para 10 minutos. Segundo uma reportagem do Sina, o custo cai 80% a 90% em comparação com o fluxo tradicional.

Usei o SOON para criar o protagonista de um jogo de ação lateral. Depois de 10 minutos, 36 conjuntos de animações foram exportados diretamente: idle, caminhada, corrida, salto, ataque, dano, morte… cada ação ficou fluida e natural. Se eu tivesse pedido orçamento para um artista, teria esfriado na hora.

Holopix AI: desenho sob medida para jogos e recorte inteligente

Holopix AI é uma ferramenta de desenho com IA pensada para desenvolvimento de jogos. Ela tem dois recursos especialmente úteis: geração de rascunho em um clique e recorte em um clique.

Geração de rascunho: você insere a descrição do personagem, e a ferramenta cria várias opções de estilo para escolher. Estilo ocidental, anime, pixel art; há modelos treinados para esses usos, o que encaixa melhor em necessidades de jogos do que ferramentas genéricas de IA.

Recorte em um clique: personagens gerados costumam vir com fundo, mas em jogos você precisa de sprites com fundo transparente. O recurso de recorte do Holopix AI resolve isso em um clique, com bordas limpas e sem precisar recortar manualmente no PS. Para programadores sem habilidade de arte, isso salva muito tempo.

Wanxiang Ronglu: SDXL em implantação local

Wanxiang Ronglu, ou Anything XL, é uma ferramenta local baseada em Stable Diffusion XL. A principal vantagem é simples: sem risco de vazamento de privacidade e sem limite de uso por chamadas.

Se o seu projeto tem requisitos de confidencialidade e você não quer subir ideias de arte para uma plataforma em nuvem, Wanxiang Ronglu é uma boa opção. A implantação dá algum trabalho e exige GPU, mas depois de pronta a velocidade de geração fica estável, e a qualidade dos assets é controlável.

Comparativo de ferramentas e recomendação de escolha

FerramentaCaracterísticaCustoCenário indicado
SOONGeração de animação esquelética em um cliquePagamento por projetoProjetos que precisam de animação de personagem
Holopix AIDesenho sob medida para jogos + recorte inteligenteRecursos básicos gratuitos + recursos avançados pagosSprites que precisam de fundo transparente
Wanxiang RongluSDXL em implantação localCusto de hardware + uso gratuitoProjetos com exigência de confidencialidade

Minha estratégia é direta: uso SOON para animação de personagens, Holopix AI para sprites estáticos e Wanxiang Ronglu para assets com necessidade de sigilo. Com as três ferramentas combinadas, dá para cobrir a maior parte das demandas de arte.

Fluxo completo da geração com IA à importação no Cocos

Com os assets gerados por IA em mãos, o próximo passo é transformá-los em recursos utilizáveis pelo motor. É aqui que aparecem mais armadilhas, então vamos por partes.

Conversão de formato e remoção de fundo

Imagens geradas por IA normalmente vêm com fundo. Em jogos, sprites precisam de fundo transparente, então o primeiro passo é remover o fundo.

Algumas ferramentas para isso:

  • Transparify: ferramenta web; você envia a imagem, remove o fundo em um clique e obtém bordas limpas.
  • SpriteCut AI: criado para sprites de jogos; reconhece o contorno do personagem e recorta automaticamente o espaço vazio excedente.
  • Recorte integrado do Holopix AI: durante a geração, você pode escolher a opção de fundo transparente e resolver tudo em uma etapa.

Depois do processamento, garanta que a exportação seja em PNG com canal Alpha. JPG não suporta transparência; não use.

Criação prática de atlas

Se você importar sprites avulsos diretamente, cada sprite dispara um Draw Call. 10 sprites viram 10 Draw Calls; 100 sprites viram 100 Draw Calls. Em dispositivos fracos, a queda de desempenho fica visível.

Atlas é a solução. Você empacota vários sprites em uma imagem grande, e o motor renderiza todos os sprites que usam esse atlas com um único Draw Call.

Pontos de configuração no TexturePacker:

  1. Abra o TexturePacker e adicione seus arquivos de sprite.
  2. Em Output, selecione cocos2d-x e exporte arquivos plist + png.
  3. Em Trim Mode, selecione trim, que recorta pixels transparentes sem alterar o quadro original da imagem. Não escolha crop nem flush position, pois isso pode deslocar a animação.
  4. Ajuste Max Size conforme o dispositivo alvo; em geral, 2048x2048 basta.

Cocos Creator 3.0 não oferece suporte a formatos de TexturePacker abaixo da versão v4.x. Se você usa uma versão antiga do TexturePacker, atualize para a mais recente.

Etapas para importar no Cocos Creator

O TexturePacker exporta dois arquivos: .plist e .png. Os dois precisam ser importados juntos no Cocos Creator.

O método é simples: arraste os dois arquivos para a pasta assets. Depois de arrastar, o gerenciador de recursos exibirá um asset Atlas; ao expandi-lo, você verá todos os SpriteFrames.

Cada SpriteFrame pode ser usado separadamente. No componente Sprite, selecione o quadro correspondente na propriedade SpriteFrame para exibir aquele sprite.

Caso completo: importação de personagem para um jogo 2D de ação lateral

Imagine que você usou o SOON para gerar um cavaleiro com 36 conjuntos de animações. O fluxo completo fica assim:

Step 1: geração com IA

  • No SOON, insira “cavaleiro cartunesco usando armadura”.
  • Escolha tipos de ação: idle, caminhada, ataque, salto etc.
  • Exporte sequências de quadros PNG, com vários quadros para cada ação.

Step 2: remoção de fundo

  • Importe as sequências PNG no Transparify.
  • Remova o fundo em um clique e exporte PNGs transparentes.

Step 3: empacotamento em atlas

  • Adicione todos os quadros PNG no TexturePacker.
  • Selecione cocos2d-x como formato de Output.
  • Exporte knight_atlas.plist e knight_atlas.png.

Step 4: importação no motor

  • Arraste plist e png para assets/characters/hero/sprites/.
  • Aguarde a geração automática dos arquivos meta.

Step 5: uso na cena

  • Crie um nó Sprite.
  • Na propriedade SpriteFrame, escolha o quadro correspondente dentro de knight_atlas.
  • Use o componente Animation para tocar a animação por quadros e alternar entre ações.

Depois desse fluxo, o cavaleiro já pode correr dentro do jogo. As 36 ações ficam disponíveis, e o Draw Call é apenas um, porque tudo vem do mesmo atlas.

Regras de nomenclatura e boas práticas para pastas de assets

Quando o projeto chega à metade, a pasta assets pode virar uma bagunça: imagens, scripts e prefabs misturados, nomes aleatórios, recursos difíceis de achar. Esse cenário é comum demais. Com base em projetos reais, segue uma estrutura de organização para assets no Cocos Creator.

Regra básica de nomenclatura

O princípio central é: uma pasta deve conter apenas um tipo de arquivo.

Não coloque texture, prefab e animation no mesmo diretório. Separe por tipo para encontrar mais rápido e manter sem dor de cabeça.

O formato de nome pode seguir a convenção comum em Unity e Unreal:

prefix_theme_description_suffix

Exemplos:

  • char_knight_idle_a.png — personagem, cavaleiro, idle, albedo, ou cor base.
  • char_knight_attack_01.png — personagem, cavaleiro, ataque, número 01.
  • ui_btn_play_9slice.png — UI, botão, play, imagem 9slice.

Convenção de suffix:

  • _a — albedo, textura de cor base.
  • _n — normal, textura de normal map.
  • _9 — 9slice, imagem em nove partes.

Essa regra parece trabalhosa, mas o ganho é claro: ao bater o olho no nome, você sabe o que é e onde será usado. Em colaboração de equipe, nomenclatura padronizada é a forma mais barata de reduzir custo de comunicação.

Modelo recomendado de estrutura de pastas

Organize por módulos funcionais do jogo, não por tipo de recurso global. Por quê? Porque, durante o desenvolvimento, você pensa em “sistema de personagens”, não em “todas as texturas”.

assets/
├── characters/
│   ├── hero/
│   │   ├── textures/         # Texturas do personagem
│   │   ├── animations/       # Assets de animação
│   │   ├── sprites/          # SpriteFrames
│   │   └── prefab/           # Prefab do personagem
│   ├── enemies/
│   │   ├── textures/
│   │   ├── animations/
│   │   ├── sprites/
│   │   └── prefab/
│   ├── npcs/
│
├── scenes/
│   ├── level01/
│   │   ├── textures/         # Texturas de cena
│   │   ├── tilemaps/         # Mapas de tiles
│   │   ├── prefab/           # Prefabs de cena
│
├── ui/
│   ├── textures/             # Texturas de UI
│   ├── fonts/                # Arquivos de fonte
│   ├── prefab/               # Prefabs de UI
│
├── audio/
│   ├── effects/              # Efeitos sonoros
│   ├── music/                # Música de fundo
│
├── scripts/                  # Scripts TypeScript
│   ├── components/           # Componentes personalizados
│   ├── utils/                # Utilitários
│
├── resources/                # Recursos de carregamento dinâmico, use com cuidado
│   ├── languages/            # Textos multilíngues
│   ├── unlock-scenes/        # Cenas desbloqueáveis

A vantagem dessa estrutura é que cada módulo fica autocontido, sem interferir nos outros. Ao mudar o personagem hero, você trabalha apenas dentro de characters/hero e reduz o risco de alterar recursos que não têm relação.

Erros comuns e guia para evitar armadilhas

Algumas armadilhas em que já caí:

Armadilha 1: misturar arquivos
Colocar hero.png e hero.prefab na mesma pasta deixa a organização ruim depois. Separe: textures para imagens, prefab para prefabs.

Armadilha 2: nomes aleatórios
image1.png, new_picture.png, sem_nome.png… um mês depois, nem você lembra o que são. Use nomes padronizados; o próprio nome do arquivo vira documentação.

Armadilha 3: ignorar arquivos meta
Ao renomear ou mover assets, esquecer de sincronizar o arquivo meta faz as referências dentro dos prefabs virarem Missing. Recriar essas referências consome tempo e paciência.

O Cocos Creator tem um mecanismo para isso: quando você renomeia ou move dentro do editor, o arquivo meta é sincronizado automaticamente. Portanto, todas as operações de assets devem ser feitas dentro do editor, não diretamente no sistema de arquivos.

Regras centrais para gerenciar arquivos meta

Arquivos meta e arquivos de recurso são vinculados. Algumas regras essenciais:

  1. Mesmo nome, mesmo diretório: knight.png.meta deve ficar na mesma pasta que knight.png.
  2. Não excluir: se apagar o meta, o uuid se perde e as referências quebram.
  3. Não renomear manualmente: mudar o nome do arquivo meta faz o motor não encontrar o asset.
  4. Operar dentro do editor: renomear, mover e excluir deve acontecer no gerenciador de recursos do editor.

Se você realmente precisar operar fora do sistema do editor, por exemplo em importação em lote, espere os arquivos meta serem gerados automaticamente depois da importação. Em projetos grandes, isso pode levar alguns minutos; tenha paciência.

Otimização de desempenho: atlas e controle de Draw Call

Depois que o jogo vai ao ar, jogadores começam a reclamar de “travamentos” e “queda de frames”. Na investigação, aparece Draw Call 120+. Dispositivos fracos simplesmente não aguentam.

O que é Draw Call? Cada vez que o motor renderiza um sprite, ele envia uma instrução de desenho para a GPU. Quando há chamadas demais, o custo de comunicação entre CPU e GPU explode, e o FPS cai para menos de 30.

Por que usar atlas: o princípio do Draw Call

Um exemplo direto:

Seu jogo tem 50 elementos de UI: fundo, botões, ícones, caixas de texto… se cada elemento for um Sprite independente, o motor precisa enviar 50 Draw Calls.

Se esses 50 elementos de UI forem empacotados em um único atlas, o motor só precisa enviar 1 Draw Call. Em uma instrução de renderização, a GPU carrega os dados do atlas inteiro e exibe regiões diferentes conforme o SpriteFrame.

Comparação prática: em um projeto, antes do ajuste, havia 120+ Draw Calls; depois, caiu para menos de 10. A taxa de quadros subiu de 25fps para 60fps. Em dispositivos fracos, a melhora é visível.

Mecanismo de Dynamic Atlas em detalhe

O Cocos Creator tem um mecanismo automático chamado Dynamic Atlas.

A ideia é que o motor combine imagens avulsas em um atlas temporário durante a execução. Você não empacota manualmente; o próprio motor tenta fazer isso.

O controle fica na propriedade Packable do SpriteFrame. Se Packable estiver marcado, aquele SpriteFrame participa do Dynamic Atlas; se estiver desmarcado, não participa.

Mas Dynamic Atlas tem limitações:

  1. Suporta apenas menos de 32 imagens avulsas; acima disso, perde efeito.
  2. A combinação acontece em tempo de execução e tem custo.
  3. É menos estável; quando a quantidade de imagens muda, o atlas pode ser reconstruído.

Por isso, em projetos de produção, ainda recomendo empacotar atlas manualmente. Dynamic Atlas serve para protótipos rápidos, não para projetos que vão ao ar.

Configuração de Auto Atlas e fluxo de build

Cocos Creator 3.x tem um recurso integrado: Auto Atlas.

Como usar:

  1. Crie um asset AutoAtlas dentro de assets.
  2. Adicione os SpriteFrames que deseja empacotar.
  3. Ao fazer o build do projeto, marque a opção “Auto Atlas”.
  4. Depois do build, as imagens avulsas são combinadas automaticamente em um atlas.

A vantagem do Auto Atlas é que o processo acontece no build, economizando a etapa manual de empacotamento.

Mas há um detalhe: depois do build, os arquivos de atlas ficam no diretório de saída do build, não na pasta assets. Durante o desenvolvimento, você ainda vê imagens avulsas; o atlas aparece apenas após o build. Lembre disso ao depurar.

Como quantificar o efeito da otimização

Como validar o efeito do ajuste com atlas?

Abra o painel de depuração do Cocos Creator e observe o número de Draw Calls. Registre o valor antes do ajuste e compare depois.

120+
Draw Calls sem atlas
Valor típico em dispositivos fracos
Menos de 10
Draw Calls com atlas
Resultado após otimização
25fps → 60fps
Aumento da taxa de quadros
Comparação medida em dispositivo fraco
Source: Dados de teste de desempenho do blog CSDN

O FPS dobra, e os travamentos desaparecem. Esse é o valor prático do ajuste com atlas.

Além disso, o atlas reduz o custo de memória. Com menos troca de texturas, a GPU não precisa carregar dados de texturas diferentes com tanta frequência. O uso de memória fica mais estável, e a pressão sobre o GC diminui.

Resumo

O caminho da geração de assets de arte com IA até recursos utilizáveis no Cocos Creator depende, no fundo, de padronização e automação.

Ferramentas de IA como SOON, Holopix AI e Wanxiang Ronglu reduzem o custo de arte para perto de um décimo do processo tradicional. Mas gerar o asset é só o primeiro passo. Importar no motor, criar uma estrutura de pastas consistente, empacotar atlas e controlar Draw Calls são as etapas que determinam se o projeto continuará fácil de manter.

Guarde estes pontos:

  • assets é a única biblioteca de recursos; não apague as outras pastas sem necessidade.
  • Arquivos meta são a identidade dos assets; todas as operações devem acontecer dentro do editor.
  • A estrutura de pastas deve seguir módulos funcionais, com apenas um tipo de arquivo por pasta.
  • Empacotar atlas é uma etapa obrigatória de otimização; Draw Calls podem cair de 100+ para menos de 10.

Comece praticando em um projeto pequeno: gere um personagem com SOON ou Holopix AI, importe no Cocos Creator seguindo este fluxo e monte uma estrutura de assets padronizada. Você vai perceber que gerenciar recursos de arte deixa de ser um problema nebuloso e passa a ser um fluxo replicável.

Depois que esse fluxo estiver rodando, organizar assets em projetos maiores fica muito mais natural.

Fluxo completo para importar assets de arte com IA no Cocos Creator

Um fluxo padronizado da geração com IA até o uso no motor, incluindo criação de personagem, remoção de fundo, empacotamento em atlas e uso na cena.

⏱️ Estimated time: 15 min

  1. 1

    Step 1: Gerar o personagem com IA

    No SOON, insira uma descrição do personagem, como 'cavaleiro cartunesco usando armadura', escolha tipos de ação, como idle, caminhada e ataque, e exporte a sequência de quadros em PNG.
  2. 2

    Step 2: Remover o fundo

    Importe a sequência PNG no Transparify ou use o recurso de recorte integrado do Holopix AI para remover o fundo em um clique e exportar PNGs transparentes.
  3. 3

    Step 3: Empacotar o atlas

    No TexturePacker, adicione todos os quadros PNG, selecione cocos2d-x como Output, escolha trim em Trim Mode e exporte knight_atlas.plist e knight_atlas.png.
  4. 4

    Step 4: Importar no motor

    Arraste os arquivos plist e png para assets/characters/hero/sprites/ e aguarde a geração automática dos arquivos meta.
  5. 5

    Step 5: Usar na cena

    Crie um nó Sprite, selecione o quadro correspondente do atlas na propriedade SpriteFrame e use o componente Animation para tocar a animação por quadros e alternar entre ações.

FAQ

Assets de arte gerados por IA podem ser importados diretamente no Cocos Creator?
Normalmente eles precisam de conversão de formato. Imagens geradas por IA costumam vir com fundo, então primeiro é preciso transformá-las em PNG transparente. Animações esqueléticas, como as do SOON, podem ser exportadas diretamente em formato Spine; sprites estáticos precisam ser empacotados em atlas com TexturePacker.
Que tipo de recurso deve ficar na pasta resources?
Apenas recursos que realmente precisam ser carregados dinamicamente, como textos multilíngues ou cenas desbloqueadas conforme o progresso do jogador. Não coloque todos os assets em resources, porque isso aumenta demais o tamanho do build. Recursos comuns podem ficar nas pastas correspondentes dentro de assets.
Posso excluir ou editar manualmente arquivos meta?
Não. O arquivo meta registra o identificador único do asset, o uuid. Excluí-lo quebra referências; editá-lo manualmente pode fazer o motor não encontrar o recurso. Todas as operações de assets, como renomear, mover e excluir, devem ser feitas dentro do editor do Cocos Creator.
O que acontece quando o Draw Call fica alto demais?
Draw Calls demais aumentam o custo de comunicação entre CPU e GPU, causando queda de FPS e travamentos, especialmente em dispositivos mais fracos. Empacotar sprites em atlas permite combinar vários sprites em um único Draw Call e melhora bastante o desempenho.
Como validar o efeito da otimização com atlas?
Abra o painel de depuração do Cocos Creator e confira o número de Draw Calls. Antes da otimização, é comum ver 100+; depois, pode cair para menos de 10. A taxa de quadros pode subir de 25fps para 60fps, uma diferença visível a olho nu.
Qual Trim Mode devo escolher no TexturePacker?
Escolha trim. Ele recorta pixels transparentes sem alterar o quadro original da imagem. Não escolha crop nem flush position, pois esses modos podem deslocar a animação.

16 min de leitura · Publicado em: 20 mai 2026 · Atualizado em: 14 jul 2026

Comentários

Entre com GitHub para comentar

Easton BlogEaston Blog