Neste tutorial, você aprenderá a criar um efeito visual de fogo e adicioná-lo às armadilhas no nível.
Antes de começar
Assimile como se cria um material, abordado no módulo Como criar materiais e instâncias de material desta trilha.
Você trabalhará com os seguintes ativos:
Blueprint BP_FireTrap
Visão geral do Niagara
O sistema de efeitos visuais Niagara é a ferramenta principal para criar efeitos visuais dentro da Unreal Engine. O sistema vem com uma variedade de efeitos visuais prontos que podem ser personalizados e colocados diretamente no seu nível. Você também pode criar seus próprios efeitos visuais para personalização completa.
Saiba mais sobre o Niagara acessando a documentação Visão geral do Niagara.
Crie um sistema Niagara
Agora, você criará seu primeiro sistema do Niagara que usa um emissor regular. Para criar um novo sistema Niagara, siga estas etapas:
Vá para o Navegador de conteúdo e navegue até a pasta Conteúdo > Jogo de aventura > Artista. Clique com o botão direito do mouse na pasta Artista e selecione Nova pasta. Dê o nome Efeitos visuais.
Na nova pasta Efeitos visuais, clique com o botão direito em qualquer lugar da área de ativo, vá para FX e selecione Sistema Niagara.
A janela Criar sistema Niagara é aberta. Aqui, você pode selecionar um emissor ou sistema como base para o efeito visual.
Se você selecionar um sistema, ele criará um sistema Niagara que utiliza um ou mais emissores. Se você selecionar um emissor, será criado um sistema Niagara que utiliza um único emissor.
Selecione o emissor Partículas suspensas e clique em Criar.
Dê o nome NS_HangingParticles para este ativo e abra-o.
Na janela NS_HangingParticles, você verá dois nós: NS_HangingParticles e HangingParticulates.
O nó NS_HangingParticles é o nó do sistema, listando opções como as propriedades para todo o sistema e duas etapas chamadas Pawn do sistema e Atualização do sistema, em que você pode adicionar módulos que são executados quando a Unreal Engine cria o sistema (Geração) e enquanto o sistema está ativo (Atualização).
O nó HangingParticulates é o emissor. Este é o nó que define como as partículas são geradas e renderizadas.
Se você clicar com o botão direito em qualquer lugar do gráfico da Visão geral do sistema onde estão os nós, você poderá adicionar novos emissores a esse sistema. Você também pode usar a tecla E como atalho para adicionar um novo emissor.
Adicione um emissor abrirá a janela Adicionar emissor ao sistema. Ela é semelhante à janela anterior em que você criou o sistema, mas exibe apenas os emissores base disponíveis (já que você já criou o sistema). Neste exemplo, feche a janela sem adicionar outro emissor.
O emissor HangingParticulates vem com módulos predefinidos que geram o efeito visual de partículas, semelhantes a pequenas partículas de poeira. No canto superior esquerdo da janela, você pode ver o efeito no painel Pré-visualização.
Agora você aumentará a Taxa de geração deste emissor para aumentar o número de partículas geradas. Siga as etapas abaixo:
Selecione o nó HangingParticulates.
No painel Detalhes, vá até a categoria Taxa de geração.
Altere o campo SpawnRate para 250.
Você também pode selecionar o módulo Taxa de geração no emissor para ver apenas as opções relacionadas a esse módulo no painel Detalhes.
No painel Pré-visualização, você verá muitas mais partículas renderizadas.
Na parte inferior da janela, você pode ver uma linha do tempo usada para animar o sistema. Você pode pressionar o botão Pausar ou Reproduzir para controlar a pré-visualização.
Agora você adicionará esse sistema ao seu nível para vê-lo no contexto. Siga as etapas abaixo:
Vá para o Navegador de Conteúdo e vá até a pasta Jogo de aventura > Artista > Efeitos visuais onde você criou o NS_HangingParticles ativo.
Arraste o ativo NS_HangingParticles para o mundo. Agora você verá o efeito visual simulado no nível.
Como criar um efeito de fogo
Nesta seção, você criará um efeito de fogo para suas armadilhas.
Como criar o material
Para criar um efeito de fogo animado, você usará uma textura que contém uma série de imagens estáticas que, quando exibidas em sequência, parecem animar uma chama. Esse tipo de textura é chamado de textura SubUV e pode ser animado pelo material ou pelo emissor Niagara.
Primeiro, você criará um material usando a textura de fogo fornecida. Siga as etapas abaixo:
Vá para o Navegador de Conteúdo e navegue até a pasta Jogo de aventura > Artista > Materiais.
Clique com o botão direito em qualquer lugar e crie um Material.
Chame este ativo de M_Fire_SubUV_Simple e abra-o.
Para configurar o material, siga estes passos:
No painel Detalhes, na categoria Material:
Mude o Modo de mesclagem para Translúcido.
Altere o Modelo de sombreamento para Não Iluminável.
Clique com o botão direito dentro do Editor de Material e crie um nó ParticleSubUV .
Selecione o nó Particle SubUV e, no painel Detalhes, altere a Textura para o arquivo T_Fire_SubUV.
No nó Particle SubUV, arraste o pin RGB e adicione um nó Multiply (na categoria Matemática).
No nó Multiply, arraste o pin de saída e conecte-o à entrada Cor emissiva do nó M_Fire_SubUV_Simple.
Clique com o botão direito em uma área vazia abaixo do nó Particle SubUV e adicione um nó Particle Color (na categoria Partículas).
Arraste o pin de saída RGB e conecte-o ao pin de entrada B do nó Multiply.
No nó Particle SubUV, arraste o pino de saída R e adicione um novo nó Multiply.
No nó Particle Color, arraste o pin de saída A e conecte-o ao pin de entrada B do novo nó Multiply.
No novo nó Multiply, arraste o pin de saída e adicione um nó Clamp.
No nó Clamp , arraste o pin de saída e adicione um nó Depth Fade.
No nó Depth Fade, altere o campo Fade Distance para 60.
No nó Depth Fade, conecte o pin de saída ao pin de entrada Opacity do nó M_Fire_SubUV_Test.
A pré-visualização do material deverá ficar parecida com isto:
Este material define a cor emissiva como a forma da textura ParticleSubUV tingida (colorida) pela cor da partícula, proveniente do sistema do Niagara. A opacidade é definida usando o valor alfa (transparência) de cor de partícula e normalizada entre 0 e 1. Por fim, usamos um nó DepthFade para ocultar partículas que estão sobrepostas (interferindo) com geometrias próximas no nível.
Como criar o sistema Niagara
Em seguida, você criará o sistema do Niagara que gera o efeito visual de fogo. Para o efeito de fogo, use um emissor leve (sem estado). Esses emissores são otimizados para melhor desempenho em comparação aos emissores tradicionais (com estado), mas estão limitados a um conjunto específico de módulos.
Para saber mais sobre emissores leves, leia a documentação Visão geral dos emissores leves do Niagara.
Siga estas etapas para criar um sistema Niagara:
Vá para o Navegador de Conteúdo e navegue até a pasta Jogo de aventura > Artista > Efeitos visuais.
Clique com o botão direito em qualquer lugar, vá em FX e selecione Sistema Niagara.
Na lista, selecione Peso leve mínimo e clique em Criar. Observação: você também pode usar o campo de pesquisa na parte superior da janela para encontrar o sistema.
Dê o nome NS_LW_Fire para este ativo e abra-o.
Em seguida, você configurará os módulos do emissor. Siga as etapas abaixo:
Selecione o nó emissor Minimal.
No painel Detalhes, na categoria Estado de Emissor, altere Duração do loop para 5,0 s.
Na categoria Gerar explosão instantaneamente:
Ao lado do título Gerar explosão instantaneamente, clique no menu suspenso Tipo e altere para Taxa. Isso mudará o módulo "Gerar explosão instantaneamente" para um módulo Taxa de geração.
Altere o tipo de campo Taxa de geração para Vinculação.
Vá para o painel Parâmetros do usuário no canto inferior esquerdo da janela. Clique no botão + ao lado da categoria "Parâmetros do usuário" para adicionar um novo parâmetro.
Selecione Criar novo > Comum > Float.
Dê o nome FireSpawnRate para este parâmetro.
Altere o valor do parâmetro FireSpawnRate para 20.
Selecione o emissor Mínimo e, no painel Detalhes, altere o valor do campo Taxa de geração para FireSpawnRate no menu suspenso.
Com o emissor ainda selecionado, no painel Detalhes, vá para a categoria Inicializar partícula e altere o campo Tempo de vida para 5,0 s.
No emissor, pressione o botão + ao lado do estágio Simular e adicione um módulo Posição do formato.
Quando você adiciona um módulo, ele é selecionado por padrão, e o painel Detalhes exibe as propriedades relacionadas apenas a esse módulo. Você sempre pode selecionar o emissor para exibir as propriedades de cada módulo ou selecionar um único módulo para exibir apenas suas propriedades.
Selecione o novo módulo e, no painel Detalhes, defina Primitiva de formato como Plano. Isso distribui as partículas de fogo em uma superfície plana. Você pode reduzir o Tamanho do plano se quiser, mas, para este tutorial, mantenha-o em 100 por 100.
No emissor, no estágio Simular, adicione um módulo Adicionar velocidade.
Selecione o módulo e no painel Detalhes:
Defina Velocidade como Alcance não uniforme.
Defina o campo de Z mínimo do campo Velocidade para 5 e Z máximo para 10. Isso moverá as partículas para cima lentamente.
No emissor, em Simular, adicione um módulo Cor de escala.
Selecione o módulo e, no painel Detalhes, defina o tipo de escalapara Intervalo de cores.
Clique no campo Cor mínima e altere Hex sRGB para FFA91300.
Clique no campo Cor máxima e altere Hex sRGB para FF4747FF.
Isso definirá a cor de cada partícula apropriadamente.
No emissor, em Simular, adicione um módulo Dimensionar tamanho do sprite e defina o intervalo como 5 e 8. Isso redimensionará as partículas para torná-las significativamente maiores.
No emissor, em Simular, adicione um módulo Animação Sub UV.
No emissor, na categoria Renderizador, selecione o módulo Renderizador de sprite.
No painel Detalhes, atualize os seguintes campos:
Mude o material para o material M_Fire_SubUV_Simple que você criou.
Altere o Alinhamento para Alinhado à velocidade.
Mude o Modo de orientação para Câmera do rosto.
Na categoria Sub UV, altere Tamanho de subimagem para 6 e 6.
Você inseriu um tamanho de subimagem de 6x6 porque a textura T_Fire_SubUV tem 6 linhas e 6 colunas.
Agora você pode ver a pré-visualização do novo efeito de fogo!
Como adicionar o efeito de fogo às armadilhas de fogo
Por fim, você precisará adicionar o efeito de fogo ao Blueprint da armadilha para que o efeito de fogo seja reproduzido em cada armadilha enquanto ela estiver ativa. Siga as etapas abaixo:
Vá para o Navegador de Conteúdo e navegue até a pasta Jogo de aventura > Designer > Armadilhas.
Abra o Blueprint BP_TrapFire.
No painel Componentes, selecione o componente Base, clique em Adicionar e adicione um componente do sistema de partículas Niagara.
Ao selecionar o componente Base primeiro, você adicionará o componente Niagara como filho do componente Base. Essa é uma etapa importante para fazer o efeito de fogo ser dimensionado conforme o tamanho do componente Base.
Selecione o componente Niagara. No painel Detalhes, na seção Niagara , altere o Ativo do sistema Niagara para o NS_LW_Fire que você criou.
No Editor de Blueprint, abra a aba Gráfico de Eventos. Deve ficar assim:
Antes do nó Stop na linha superior, você adicionará dois novos nós para desativar o efeito de fogo.
Remova a conexão entre os nós Stope Set Material ao segurar ALT e clicar com o botão esquerdo na conexão entre eles.
Crie um espaço entre os nós.
Clique com o botão direito no meio e adicione um nó Deactivate Niagara. Observação: esse nó recebeu o nome do componente do Niagara que você adicionou antes. Por exemplo, Desativar [Componente], então o nome pode ser diferente do que está aqui.
Conecte o nó Set Material ao nó Deactivate Niagara.
Conecte o nó Deactivate Niagara ao nó Stop Audio.
Agora, repita os passos para a linha abaixo desta, em que Set Material e Play Audio ocorrem.
Siga as mesmas etapas de antes, mas adicione um nó Activate Niagara.
Compile e salve o seu Blueprint.
O Gráfico de Eventos deve ficar assim:
Em seguida, adicione a função de modificar o parâmetro de usuário do Niagara FireSpawnRate que você criou com base no Blueprint da armadilha. Neste exemplo, você está modificando a taxa de geração de fogo, mas essa técnica pode ser usada para modificar qualquer número de parâmetros de usuário no sistema Niagara.
Para modificar o parâmetro do usuário, siga estas etapas:
No Editor de Blueprint, acesse a aba Script de Construção.
Crie uma nova variável do tipo float e dê o nome FireSpawnRate.
Selecione a nova variável e faça o seguinte:
Mude a categoria para Configuração. Isso categorizará FireSpawnRate com as outras variáveis na categoria Configuração.
Altere o Valor padrão para 10. Isso garante que cada nova instância da armadilha de fogo no nível começará com partículas visíveis.
Habilite Instância editável para tornar essa variável pública.
No gráfico, arraste a partir do pin de execução do nó Parent: Construction Script e adicione um nó Set Niagara Variable (Float). Neste nó:
Insira FireSpawnRate no campo de texto É nome de variável. Isso se refere ao parâmetro que você criou no sistema Niagara. Escreva o nome exatamente como ele aparece no sistema Niagara.
Arraste o pin In Value e adicione um nó Get FireSpawnRate. Isso se refere à variável que você criou neste Blueprint.
Arraste o pin Target e adicione um nó Get Niagara, que se refere ao componente Niagara que você adicionou ao Blueprint.
Salve e compile o blueprint. O gráfico do Script de Construção deve ficar assim:
É hora de ver o efeito de fogo na prática dentro do jogo! Como você adicionou o efeito de fogo ao ativo de armadilha do Blueprint, não é necessário adicionar o efeito visual ao nível nem alterar as armadilhas manualmente. As armadilhas ganham os efeitos de fogo automaticamente.
Como ocultar a malha-base da armadilha de fogo
Para ocultar a malha quadrada da armadilha de fogo e ver apenas o efeito do fogo no jogo, siga estas etapas:
Volte para o Blueprint
BP_TrapFire.No painel Componentes, selecione TrapBase.
No painel Detalhes, vá para a categoria Renderização e habilite Oculto no jogo.
Compile e salve o Blueprint.
Agora, ao jogar, você verá apenas o efeito de fogo no chão do nível.
Como modificar a taxa de geração de fogo
Você pode usar a variável FireSpawnRate criada anteriormente para alterar o número de partículas de fogo que cada armadilha produz.
Para modificar a taxa de geração de fogo, siga estas etapas:
No painel Outliner, use o campo de pesquisa para procurar BP_FireTrap. Você também pode abrir a pasta Room2 para ver todas as armadilhas de fogo na sala 2.
Selecione todos os atores de BP_FireTrap.
No painel Detalhes, na categoria Configuração, altere o campo Taxa de geração de fogo para 20.
Você notará como o número de partículas de fogo geradas muda com base no número entrada. Você pode continuar testando valores diferentes até encontrar o valor certo para o jogo!
Continue fazendo testes com o seu efeito e veja o que você consegue criar! Para saber mais, consulte Creating Visual Effects.
Projeto de exemplo
A seguir está um link para baixar o projeto final de amostra que você pode construir usando esta série de tutoriais. Você pode usar este projeto de exemplo para ver como será o seu projeto final ou como referência para ver como criamos e desenhamos o projeto.
A seguir
Parabéns por concluir a série de tutoriais sobre faixas artísticas! Você aprendeu a trabalhar com materiais, efeitos de pós-processamento, iluminação, áudio e efeitos visuais do Niagara para realizar uma etapa artística no seu nível.
Se você tiver interesse em criar um pacote com o seu projeto, em forma de programa independente para testar e compartilhar, confira a seguinte documentação: