Voltar para o Blog
Quest Log

Efeito de Magia 2D: Projétil, Aura e Cura

Mago em pixel art lançando um projétil azul com rastro, envolto por uma aura roxa, ao lado de um aliado com brilho verde de cura

Efeito de magia 2D em pixel art: projétil, aura e cura com núcleo, brilho e rastro, cor por tipo de magia e modo aditivo na Godot e na Unity para brilhar.

Ferramenta:Aseprite

Efeito de Magia 2D: Projétil, Aura e Cura

Um efeito de magia 2D convincente tem sempre três partes: o núcleo (a parte mais clara, onde está a "energia"), o brilho em volta e o rastro que fica para trás. Quando projétil, aura e cura usam essa mesma estrutura e uma cor fixa por tipo de magia, o jogador separa dano de cura num relance e o jogo inteiro parece ter uma linguagem visual só.

Aqui você desenha no Aseprite os três efeitos, com tamanho, número de frames e paleta, define a cor de cada tipo de magia e configura o modo aditivo na Godot e na Unity para o efeito brilhar como luz. Em Pixelorama, LibreSprite ou Piskel (grátis), o desenho segue os mesmos passos.

Efeito de magia 2D: núcleo, brilho e rastro

Pense na magia como uma pequena fonte de luz. Cada parte tem um papel:

  • Núcleo: a parte mais clara e mais sólida, quase branca com um toque da cor da magia. É para onde o olho vai. Muda pouco entre frames.
  • Brilho: um halo em volta do núcleo, no tom médio da cor. Pulsa (cresce e encolhe 1 pixel).
  • Rastro: pedaços soltos no tom escuro, que ficam para trás ou orbitam. É a parte que mais se mexe.

Rampa de 4 cores por tipo de magia, do claro ao escuro. Exemplo para uma magia arcana azul:

PapelExemplo
Núcleo#F2FBFF (quase branco azulado)
Brilho claro#8FE3FF
Brilho#3B9CFF
Rastro#2E3FA8

A regra que mantém a linguagem visual: todas as magias usam a mesma estrutura de rampa (quase branco, claro, médio, escuro), só trocando o matiz. Assim, uma magia de fogo e uma de gelo parecem do mesmo jogo.

Projétil mágico em loop

Arquivo: File > New (Ctrl+N), 24x16 pixels, fundo Transparent. O projétil vai da esquerda para a direita, com a frente no lado direito.

Crie três camadas com Layer > New > New Layer (Shift+N): rastro, brilho, nucleo, nessa ordem de baixo para cima. Separar em camadas permite animar cada parte em ritmo próprio e ajustar uma sem estragar as outras.

Frame 1:

  1. Núcleo: um círculo de 4x4 pixels no tom de núcleo, centrado na altura, perto da frente (x entre 16 e 19).
  2. Brilho: um anel de 1 pixel no tom claro em volta do núcleo, e mais 1 pixel no tom médio na parte de trás, formando uma gota deitada que aponta para frente.
  3. Rastro: 3 ou 4 pixels soltos no tom escuro atrás da gota, entre x 4 e x 12, em alturas diferentes.

Frames 2 a 4 (crie com Alt+N, que copia o frame anterior, e ligue o onion skin com F3):

  • O núcleo fica parado ou oscila 1 pixel para cima e para baixo.
  • O brilho alterna entre o anel completo e um anel com 1 pixel a mais na frente, criando pulso.
  • Os pixels do rastro andam 2 pixels para trás por frame e trocam do tom médio para o escuro antes de sumir. Um pixel novo nasce atrás do brilho a cada frame.

Duração: 70 ms por frame. Toque com Enter. O projétil parece se mover mesmo parado no canvas, porque o rastro corre para trás. Na engine, o deslocamento real é do nó; a animação só precisa dar sensação de energia.

Faça também o frame de impacto como uma animação separada de 4 frames: o núcleo vira um círculo de 8 pixels, depois um anel que se abre e se desfaz. Organize com tags em Frame > Tags > New Tag (projetil_loop, projetil_impacto). O post sobre tags de animação no Aseprite mostra como manter as duas no mesmo arquivo e exportar com nomes.

Aura em volta do personagem

A aura indica um estado: escudo ativo, buff de força, personagem carregando magia. Ela fica em volta do personagem, então precisa deixar o personagem visível.

Arquivo do tamanho do personagem mais 8 pixels de margem: para um personagem de 16x24, 24x32.

  1. Silhueta da aura: uma elipse vertical que envolve o personagem, a 2 a 3 pixels de distância dele. Desenhe só o contorno da elipse no tom médio, 1 pixel de espessura. O meio fica vazio: a aura não pode pintar por cima do personagem.
  2. Partes mais densas: em 3 ou 4 pontos da elipse, engrosse para 2 pixels e use o tom claro. São os "nós" de energia.
  3. Fagulhas subindo: 3 a 5 pixels soltos no tom escuro dentro e fora da elipse.

Animação em 6 a 8 frames:

  • Os nós de energia giram pela elipse, andando 2 a 3 pixels por frame.
  • As fagulhas sobem 1 a 2 pixels por frame e somem no topo, com novas nascendo embaixo.
  • A elipse inteira pulsa: frames ímpares com 1 pixel a mais de largura.

Duração de 90 a 110 ms por frame. Aura é estado contínuo, então o movimento é mais lento que o do projétil.

Desenhe a metade de trás da aura (a parte que fica atrás do personagem) e a metade da frente em camadas diferentes e exporte separadas. Na engine, a de trás fica atrás do sprite do personagem e a da frente na frente, o que dá a sensação de que a aura envolve o corpo.

Efeito de cura: forma subindo e cor própria

Cura precisa ser lida como o oposto de dano. Duas escolhas fazem isso: movimento para cima e cor exclusiva.

Arquivo 24x32, 10 frames, toca uma vez.

  1. Frames 1 a 2, brilho no chão: um anel achatado no tom claro em volta dos pés do personagem, abrindo de 8 para 16 pixels de largura.
  2. Frames 3 a 7, formas subindo: de 4 a 6 pequenas formas (cruzes de 3x3, losangos ou folhas, conforme o tema do jogo) nascem em volta do personagem e sobem 3 pixels por frame, cada uma começando num frame diferente. Elas usam o núcleo e o brilho claro.
  3. Frames 8 a 10, dissipação: as formas viram 1 pixel no tom médio, depois no escuro, e somem perto da cabeça.

Duração de 60 a 80 ms por frame. Um flash curto do personagem inteiro em verde claro (feito com shader, como o flash de dano) reforça a leitura.

A forma subindo é a principal diferença do dano, que costuma ser um impacto que explode para fora. Mesmo um jogador daltônico separa as duas pelo movimento.

Fazer três magias bonitas leva um fim de semana. Manter uma linguagem visual coerente para todas as magias, itens, inimigos e interfaces do jogo, de forma que o jogador entenda cada cor sem tutorial, é o trabalho de direção de arte que pesa quando você é a única pessoa no projeto.

Curso de Arte 2D
Quer fazer a arte do seu jogo?

No curso de Arte 2D para Jogos da CursoGame.Dev você vai do rabisco ao portfólio: personagens, cenários, tilesets, UI e animação, sem precisar saber desenhar.

Conhecer o curso de Arte 2D
Suporte no WhatsAppAcesso vitalícioGarantia de 7 dias

Uma tabela simples de cor por função, decidida antes de desenhar a primeira magia, evita refazer efeitos quando o jogo cresce.

Cor por tipo de magia

Defina e anote um matiz por função antes de produzir em quantidade:

FunçãoMatiz sugerido
Cura e regeneraçãoVerde ou verde-amarelado
Dano de fogoLaranja e vermelho
Gelo e lentidãoCiano e azul claro
RaioAmarelo e branco
Maldição e venenoRoxo (fuja do verde se ele já é a cor da cura)
Escudo e defesaAzul ou dourado

Duas regras importam mais que as cores em si:

  1. A mesma cor sempre significa a mesma coisa. Se verde é cura, não existe ataque verde.
  2. Magia do jogador e ataque inimigo não dividem cor. Se os projéteis inimigos são vermelhos, a magia de fogo do jogador puxa para o laranja e o amarelo, ou o jogador vai desviar da própria magia.

Para gerar as rampas a partir da rampa azul que você já fez, use Edit > Adjustments > Hue/Saturation (Ctrl+U) e gire só o matiz. Confira depois se o núcleo continua quase branco.

Magia pixel art e modo aditivo na engine

No modo de mistura normal, o efeito é pintado por cima do fundo. No modo aditivo, a cor do efeito é somada à cor do fundo, então a área fica mais clara, como luz de verdade. Isso faz a magia brilhar sobre cenários escuros.

Na Godot, selecione o Sprite2D ou AnimatedSprite2D da magia, em Material crie um New CanvasItemMaterial e mude Blend Mode para Add. Para partículas, o mesmo material vai no GPUParticles2D. O post sobre partículas na Godot com GPUParticles mostra como montar o rastro e as fagulhas com partícula em vez de desenho.

Na Unity, com o URP e o 2D Renderer, crie um shader em Assets > Create > Shader Graph > URP > Sprite Unlit Shader Graph, abra o Graph Inspector e, em Graph Settings, mude Blending Mode para Additive. Crie um material com esse shader e aplique no SpriteRenderer da magia. Para o Particle System, use um material com o shader de partículas do URP e o modo de mistura aditivo.

Dois cuidados com o aditivo:

  • Sobre fundo claro ou branco, o efeito desaparece, porque somar cor a branco continua branco. Se o jogo tem áreas claras, mantenha uma camada de contorno ou rastro no modo normal.
  • Em pixel art estrita, o aditivo cria cores fora da paleta onde o efeito encontra o fundo. Muitos jogos aceitam isso como "luz"; se o estilo não aceita, deixe o núcleo no modo normal e use aditivo só no brilho.

Erros comuns: magia da mesma cor que o inimigo

Magia da mesma cor que o inimigo. O jogador confunde a própria magia com um ataque, ou deixa de ver o ataque no meio dos efeitos. Separe as cores.

Núcleo colorido demais. Sem o quase branco no centro, a magia parece uma bola pintada, não energia.

Aura que cobre o personagem. O interior da aura fica vazio.

Cura que explode para fora. Lê como dano. Cura sobe.

Rastro parado. O rastro é o que vende movimento; ele precisa correr para trás.

Aditivo em tudo. Sobre fundos claros some, e efeitos sobrepostos estouram em branco.

Próximo passo

Desenhe o projétil primeiro, com as três camadas separadas, e use a mesma estrutura para a aura e a cura. Depois gere duas cores alternativas e teste as três magias sobre o cenário mais escuro e o mais claro do jogo. Para decidir quais partes desses efeitos ficam desenhadas e quais viram partícula ou shader, leia o post sobre VFX 2D para jogos.

Perguntas frequentes

Como fazer efeito de magia em pixel art?

Separe o efeito em três camadas: núcleo (a parte mais clara e sólida), brilho (um halo em volta, um tom mais escuro) e rastro (pedaços que ficam para trás). Use uma rampa de 3 a 4 cores do mesmo matiz, do quase branco ao tom escuro, e anime cada camada em ritmo próprio.

Quantos frames tem uma magia em pixel art?

Um projétil em loop funciona com 4 frames de 60 a 80 ms. Uma aura em volta do personagem pede 6 a 8 frames mais lentos. Um efeito de cura que toca uma vez fica bem com 8 a 10 frames. O importante é o loop fechar sem salto, não o número de frames.

Que cor usar para cada tipo de magia?

Defina um matiz por função e mantenha no jogo inteiro: por exemplo verde para cura, vermelho e laranja para dano de fogo, azul e ciano para gelo, roxo para maldição. O que importa é o jogador separar dano de cura num relance, e que nenhuma cor de magia aliada seja igual à dos ataques inimigos.

O que é blend mode aditivo?

É um modo de mistura em que a cor do efeito é somada à cor do que está atrás, deixando a área mais clara, como luz. Na Godot ele está no CanvasItemMaterial, em Blend Mode Add; na Unity, no Shader Graph de sprite com Blending Mode Additive. Ele faz a magia parecer brilhar, mas some sobre fundos muito claros.