VFX-Unreal

Niagara Basics Tutorial 2hrs

Cascade: la versión antigua de Niagara

Referencias:

Un sistema puede contener varios emisores

Preview scene settings

_assets/827b5dfa-b327-4705-9014-2adaff312344.webp

_assets/e4d82b94-a69b-426e-9c85-cb07c876b767.webp

_assets/e962eb31-efc5-49dc-81cb-77296899f6de.webp

Basics

Properties:

desactivado: partículas están con coordenadas de mundo, cuando se mueve el sistema, las partículas se van quedando en su sitio

activado: es como si estuviera precompuesto, si mueves el sistema (en el nivel) las partículas lo siguen, útil para: que un efecto quede pegado a algo

Emitter update

indica cuántas partículas se emiten

se sigue ejecutando como un tick puedes definir cada cuanto

Emitter spawn

variaciones random para cada emisor👇

UE5 Niagara Basic | Emitter Spawn | #7

Emitter state

_assets/c22bd513-ae53-4705-82c6-3a86c402a09d.webp

Si está en self, sus settings son independientes, si está en System, heredará sus settings del system

UE5 Niagara Basic | Emitter Update - Emitter State - Life Cycle | #8

_assets/c0482105-9fef-4fc7-bd91-a6c8699d571b.webp

Cuando es Infinite, solo hay que setear la duración de la emisión

_assets/61fee3d1-e1c7-4a7e-8df4-3d2973690f3e.webp

Cuando es Once y Fixed, sólo se emitirá una vez, como un disparo único, durante el tiempo indicado en el Loop duration

_assets/a8cd818a-3fee-4f8b-850d-eb16684abac3.webp

Cuando es Once y Infinite, es igual que poner Infinite en el Loop behavior, PERO! además hay la opción de ponerle un Loop delay, en este caso sirve para darle un delay antes de que empiece a emitir infinitamente

_assets/3617a3ff-0f5d-4574-af29-847f27cff4c4.webp

Cuando es Multiple...primero para que funcione bien, tienes que quitar el Spawn rate y poner un Spawn Burst instantaneous (no olvides subirle el count particles en este componente)

_assets/565ca134-3a13-428e-bd8b-f6ab98cdd3e6.webp

Luego tienes parámetros...

Loop count: cuántos disparos

Loop duration: cuánto dura cada disparo

Recalculate duration ?

Loop delay: delay entre disparo y disparo

Scalability mode

tiene System o Self, para indicar si hereda del sistema o tiene sus propias settings

tiene opciones de culling y optimización cuando está lejos de cámara

UE5 Niagara Basic | Emitter Update - Emitter State - Scalability | #9

Spawn

Por defecto viene el Spawn rate, pero podemos desactivarlo/borrarlo y elegir otro

Hay que agregarlos desde el + rojo

_assets/61f80e88-e3f0-42e8-8505-4e27eb743cf5.webp

Spawn probability (random de spawn) (0-1)

Desde uno de estos (el que elijas) se controla el número de particulas

Spawn groups

UE5 Niagara Basic | Spawn Rate | #10

Particle Spawn

Cosas que están desde el principio: color inicial, impulso inicial,
"como el construction script" o "begin play" solo se ejecuta una vez

se pueden meter los mismos nodos que el particle update pero solo se ejecutan una vez
Add velocity: es una velocidad constante
Shape location: forma del emisor: Sphere, cylinder, Box/plane, torus, Ring/Disc, Cone

Particle update

Cosas que pasan constantemente: gravedad, viento, fuerzas,

(por lo general puedes pasar los "nodos" entre los módulos, como particle update, emitter spawn..etc, pero a veces te puede dar un error, solo hace falta con que le des a Fix issues y se arregla)

Render

aquí se escoge qué se renderiza, puede ser un sprite pero también mallas 3D

por ejemplo aquí además del sprite agregamos un mesh render, pero esto hará que se renderice otra vez las partículas, por ejemplo si se están generando 2k partículas, se generarán 2k y 2k de meshes...asi que cuidado con esto

_assets/fceec357-5e93-4e15-933d-1c2c4e9fa81a.webp

si quieres mitad y mitad, crea 2 emisores

si son mallas (y en baja cantidad) y va a colisionar con el entorno, se podría poner por CPU para que calcule mejor las colisiones, pero en la mayoría de los casos mejor GPU para meshes

El material usado en Niagara tiene que estar seteado de cierta manera para poder ser usado en Niagara, sino no se pueden cambiar sus parametros

Variar posición en las partículas

Event Handler

Para crear un evento, el emisor debe cumplir 2 requisitos en Properties

En el Emisor padre
Particle update
➕"Event"... puede ser "Generate Collision/Death/Location Event"

En el emisor child
➕ (STAGE naranja de arriba del Emisor)-> Agregar un Event handler, esto creará un módulo de Event Hanlder
Event Handler
➕ "Receive"...Collision/Death/Location...Event, el que toque
Event Handler Properties/Source > Escoger el emisor que está emitiendo el evento, escoger escoger el event hander (collision/death/location) que quieres que reciba
image-1.webp

Choque de gota -Event handler

Event Handler in UE5 Niagara | Location Event | Death Event | Collision Event | Download Project - YouTube

Particle update agregar:

_assets/141f4c4c-4628-4d3e-9364-108d66aa7cf3.webp

Crear el event handler en Stage del empty (al empty lo llamamos Rain splash)

_assets/ecb138bb-4d52-445e-9914-d35ae293eb76.webp

(como a las 8:47 hizo un repaso de esta parte) será como a la 1:17h del video

Efecto granada racimo

otro ejemplo de event handler

agregar en el Emitter update un Spawn burst instantaneous

_assets/fb6fa26a-6338-4392-9b4d-8083ee8d09f4.webp

Luego agregar un Mesh renderer

_assets/4c21e5ad-a183-4d81-92fa-3aa963c5f140.webp

y darle una malla de...una silla por ejemplo

también agregar Gravity force y Collision en el Particle update

_assets/b5abfaed-1538-4f3f-b558-cc9fe2d29aad.webp

además en el particle update agregar un Kill particles

y agregarle la condición de H as collided

Emission from chaos

En el emitter setearlo en GPU, no olvidar Calculate bounds Mode-> Fixed

Luego en el Spawn from Chaos (emitter update) y el Apply Chaos Data (Particle spawn) agregar desde el triángulo invertido, "user"
_assets/adbfa186-3aac-4711-a452-3fcbe0cf8982.webp

Luego agregar el Niagara System al nivel, y en sus detalles (en el nivel) poner esto
_assets/5c174237-2fbe-4bc3-bb27-a93f99b07d3e.webp
Y el Min speed to spawn trailling particles: 10

Luego seleccionando el Geometry collection ( la geometría fracturada, simulada y grabada)
Chaos Physics/Events
✅Notify Breaks
✅Notify Collisions
✅Notify Trailing
_assets/d6e4986d-fe45-4d4e-834e-a32c8dbd2afd.webp

En Project settings, activar:
✅Generate Trailing Data

Smoke/Debris FX from Chaos (2D)

Simulation con Chaos+Grabarla en Sequencer
Chaos+Niagara
Sprite render seleccionar M_Fire_SubV
(como es un 6x6) subir su Sub Image size a 6x6
Marcar ✅ Sub UV Blending Enabled

_assets/8f2e6001-7459-4f23-9696-7a6f9b0cc1cc.webp

Initialize particle
Color: al gusto
Sprite size: 75..?
Sprite rotation mode: random

Particle update
➕Drag
➕Acceleration force
subir el Z axis a 100
➕SubUV animation

Peces/cardumen/flock

1 Million Fish? How to Simulate Fish with Niagara in Unreal Engine - YouTube

Caida de hojas

Easy Falling leaves!

Bandada aves

How to create a Bird Flock using Niagara System in Unreal 5.3 - YouTube

Electric FX

Electrified Skull FX in Unreal Engine 5.4 Niagara Tutorial - YouTube

Particulas: Aplicar Fuerzas

Particle Forces

Animación de Material

Ue5 Niagara Ground Attack VFX Tutorial - YouTube

GROUND ATTACKS

Ice Attack Effect
Stylized Smoke VFX
Event Handlers -> Location Events

Levantar polvo con los pies

Crear un Niagara System, preset: Smoke

Leyenda

➕Agregar
/ Un nivel abajo 
> Dropdown
✅ Activar
->