Partículas e VFX simples: Niagara para feedback de ações

Capítulo 14

Tempo estimado de leitura: 7 minutos

+ Exercício

O que são Partículas/VFX e por que usar Niagara como feedback

VFX (efeitos visuais) são sinais rápidos para o jogador entender que uma ação aconteceu: coletou um item, ativou um checkpoint, falhou uma interação, etc. Em vez de depender só de UI ou som, um efeito de partículas reforça a resposta no próprio mundo 3D.

No Unreal, o sistema moderno de partículas é o Niagara. Você cria um Niagara System (o “efeito completo”) e o instancia no jogo quando um evento ocorre. Para iniciantes, o foco é: (1) escolher/criar um sistema simples (sparkle/poof), (2) fazer spawn no lugar certo ou anexar em um componente, e (3) controlar o tempo de vida para não acumular efeitos.

Preparando um Niagara System simples (sparkle/poof)

Opção A: usar um sistema pronto (mais rápido)

  • No Content Browser, clique com o botão direito > FX > Niagara System.
  • Escolha um template simples (por exemplo, um burst/poof). Se não houver templates visíveis, use um sistema de exemplo do projeto (Starter Content/FX, se disponível) ou crie um sistema vazio e adicione um emitter básico.
  • Nomeie de forma clara, por exemplo: NS_Poof_Success e NS_Spark_Fail.

Opção B: criar um “poof” básico (conceito do que ajustar)

Mesmo usando templates, é importante saber quais parâmetros dão o “feeling” de poof/sparkle:

  • Spawn Burst: emite muitas partículas de uma vez (sensação de explosão curta).
  • Lifetime: curto (ex.: 0.3–1.0s) para feedback rápido.
  • Color/Scale: cor e tamanho coerentes com sucesso/falha.
  • Velocity: leve expansão para fora (poof) ou subida (sparkle).
  • Renderer: Sprite renderer costuma ser suficiente para efeitos simples.

Meta: um efeito que “aparece e some” rapidamente, sem precisar de loop.

Instanciando Niagara no mundo: Spawn at Location

O caso mais comum é criar o efeito no ponto do evento (coleta, checkpoint, impacto). Para isso, use o nó de Blueprint que cria um componente Niagara temporário no mundo.

Continue em nosso aplicativo e ...
  • Ouça o áudio com a tela desligada
  • Ganhe Certificado após a conclusão
  • + de 5000 cursos para você explorar!
ou continue lendo abaixo...
Download App

Baixar o aplicativo

Passo a passo: efeito ao coletar um item

Suponha que você já tem um Blueprint de item coletável com um evento de coleta (por exemplo, quando o jogador interage ou sobrepõe). Você vai adicionar o VFX nesse mesmo ponto.

  1. Crie uma variável do tipo Niagara System no Blueprint do item: VFX_OnCollect.
  2. No Details dessa variável, marque como Instance Editable (para escolher o sistema por instância no nível, se quiser).
  3. No ponto do evento de coleta, adicione o nó: Spawn System at Location (Niagara).
  4. Em System Template, conecte VFX_OnCollect (ou selecione diretamente um NS_...).
  5. Em Location, use a posição do item (ex.: GetActorLocation) ou um componente específico (ex.: mesh).
  6. Em Rotation, geralmente pode ser GetActorRotation ou zero.

Isso cria o efeito no mundo e ele se auto-destrói quando termina, desde que o sistema não esteja em loop.

Dica prática: offset para não “enterrar” o efeito

Se o efeito estiver aparecendo dentro do chão, some um pequeno offset no Z:

Location = GetActorLocation + (0, 0, 20)

Anexando o VFX a um componente: Spawn System Attached

Quando o efeito deve “seguir” algo (mão do personagem, um checkpoint com animação, um objeto que se move), prefira anexar ao componente.

Passo a passo: efeito ao ativar checkpoint (anexado ao mesh do checkpoint)

  1. No Blueprint do checkpoint, identifique o componente que representa o ponto visual (ex.: StaticMesh ou Scene).
  2. Crie uma variável Niagara System: VFX_OnActivate.
  3. No evento de ativação do checkpoint, use: Spawn System Attached (Niagara).
  4. Em Attach to Component, selecione o componente do checkpoint (ex.: StaticMesh).
  5. Defina Location Type como Keep Relative (se você quer um offset fixo) ou Snap to Target (se quer colar no pivot).
  6. Ajuste Relative Location (ex.: Z + 50) para o efeito ficar acima do checkpoint.

Esse método é ideal para efeitos que precisam acompanhar o objeto durante a curta duração do VFX.

Controle de tempo de vida: evitando VFX infinitos e acúmulo

Existem dois “tempos de vida” importantes: (1) o tempo de vida das partículas dentro do Niagara e (2) o tempo de vida do componente Niagara instanciado no mundo.

1) Garantir que o Niagara System não esteja em loop

  • Abra o Niagara System e verifique se o emitter está configurado para não ficar emitindo continuamente.
  • Para feedback de ação, prefira Burst e duração curta.

2) Auto-destruição do componente instanciado

Os nós de spawn geralmente possuem opções para auto-destruir quando terminar. Se você estiver guardando referência do componente retornado, pode controlar explicitamente.

Exemplo de fluxo comum:

  1. Spawn System at Location retorna um Niagara Component.
  2. Guarde em uma variável local/temporária se precisar controlar depois.
  3. Se necessário, chame Deactivate e depois Destroy Component (ou use um Set Life Span em um ator auxiliar, se você estiver encapsulando o VFX em um Actor).

Quando faz sentido controlar manualmente

  • Efeitos que podem ser interrompidos (ex.: canalização, carregamento, “interagindo…”).
  • Efeitos anexados que podem persistir enquanto uma condição for verdadeira.

Boas práticas rápidas para VFX de gameplay

  • Padronize nomes: NS_ para systems, NE_ para emitters (se usar), e variáveis como VFX_On....
  • Exponha variáveis para trocar o VFX por instância (um mesmo Blueprint com efeitos diferentes).
  • Evite spawn em Tick: VFX de feedback deve nascer em eventos, não continuamente.
  • Consistência visual: sucesso e falha devem ser distinguíveis (cor, forma, intensidade, duração).

Exercício: VFX diferente para sucesso/falha com Branch

Objetivo: ao tentar interagir com algo, disparar um VFX de sucesso se a interação for válida e um VFX de falha se não for.

Setup

  • Tenha dois Niagara Systems: NS_Success_Poof (ex.: verde/dourado) e NS_Fail_Spark (ex.: vermelho/azulado).
  • No Blueprint do objeto interagível (ou no controlador da interação), crie duas variáveis do tipo Niagara System: VFX_Success e VFX_Fail.

Lógica do exercício (passo a passo)

  1. No ponto onde você decide se a interação é válida, tenha um booleano, por exemplo: bCanInteract (ou o resultado de uma checagem).
  2. Use um nó Branch com bCanInteract como condição.
  3. No pino True (sucesso): chame Spawn System at Location com VFX_Success.
  4. No pino False (falha): chame Spawn System at Location com VFX_Fail.
  5. Para o Location, escolha um ponto coerente:
    • Se for um objeto no mundo: GetActorLocation do objeto.
    • Se for um ponto de interação: a localização de um componente “InteractionPoint” (Scene Component) para centralizar o feedback.

Variação (extra): anexar o VFX de falha ao jogador

Se a falha for “do jogador” (ex.: sem chave, sem energia), você pode anexar o VFX no personagem:

  • No pino False, use Spawn System Attached no componente do personagem (ex.: mesh ou um Scene Component na frente da câmera).
  • Use um offset pequeno para aparecer perto da mão/câmera sem bloquear a visão.

Checklist de validação do exercício

ItemO que verificar
Sucesso disparaAo interagir corretamente, o VFX aparece no local certo e some rápido
Falha disparaAo interagir sem condição, o VFX de falha aparece e não fica em loop
Sem acúmuloRepetir interações não deixa componentes “pendurados” nem queda perceptível de performance
Leitura claraMesmo sem UI, dá para diferenciar sucesso vs falha só pelo VFX

Agora responda o exercício sobre o conteúdo:

Em um Blueprint, quando você deve preferir usar Spawn System Attached em vez de Spawn System at Location para um VFX do Niagara?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Use Spawn System Attached quando o VFX deve ficar anexado e acompanhar um componente (mesh/scene) enquanto dura. Spawn System at Location é melhor para efeitos que apenas aparecem em um ponto do mundo.

Próximo capitúlo

Organização do projeto e padrões de Blueprints para manutenção da lógica de gameplay

Arrow Right Icon
Capa do Ebook gratuito Unreal Engine para Iniciantes: Fundamentos de Blueprints e Lógica de Gameplay
82%

Unreal Engine para Iniciantes: Fundamentos de Blueprints e Lógica de Gameplay

Novo curso

17 páginas

Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.