Ribbon stretching & Post Process Volume

Hi,

I’m mostly working on UE and I’m trying to make a chain lightning FX.

What I’ve got so far:

And this is my reference:
Heroes of the Storm - Thrall Spotlight - YouTube (I put a time stamp at the frame you can see it easily)

A lot of things are off. I know I won’t be able to have the exact same result as my reference. Because it was made by one, or more, professionals for a multi-millions dollars video game and all that… But that doesn’t mean I can’t make something nice too!

So. The timing is off. I know. I will have to work on that. But first, I have some problems:

  • Values. Some people I know are using Unity. They just have to drop some post process, increase some glow and boom. Nice shiny things on screen. Unreal seems a bit more complicated than that. I belive.
    The lightning I have has really low values compared to the on in reference.
    Values
    Reference

I could boost my values to like 30 or maybe more. But by doing that I’m losing a lot of details, all the tone (From opacity) are getting burned and artefacts appeares everywhere.
HighValues

So I guess this is not the right call. It seems easier to find tutorials and help on Unity than in Unreal for VFX… And I’m using Niagara. Because it is so recent, you don’t have many ressources. And I try to avoid some of the most prolific because I don’t like the way they are doing things. (Someone who was banned from this website not so long ago)


Second part is the Ribbon.

What I did was to to launch a fast and invisible projectile and use the lightning as a ribbon.
Invisible

The big green sphere is my projectile.

I wanted my lightning to be “homing” a target, like in the game it came from. So I used a spring force with a specific HitLocation (My target) in order to move the lightning in that direction.

The problem with that is the spring is hard to control. As you can see in the video for example, if I want the projectile to go fast, the ribbon won’t have the time to really appear and a gap will be seen between the projectile and the lightning ball where the lightning ribbon is supposed to come from.

I avoid the gap by reducing the spring strenght and tightness. But there is a problem then…
StartingPosition

The ribbon appear entirely but really squished. What I wanted to do was to 'Unfold" the ribbon, not spawn it entirely and scale it horizontaly as the projectile move.
I tried to illustrate my goal with a magnificent illustration made on Paint.

But I have no idea how to do it. I tried lot of things and I wonder is this is even possible.

The closest thing I found was done on this video:

But the version is different (4.25 in the video… I work on the 4.26.) and I was not able to reproduce the result shown at approximately 7:30. But maybe there is an easier way to do it.

And I think that’s it. So what I struggle with is the bloom and post-process in Unreal to make my FX looks a bit more shiny, like with a shader aplifier on Unity for example…
And if there is a way to “unfold” a ribbon rather than spawning it really squished and let it unwrap itself as it move forward.

Or maybe I’m overcomplicating the thing and there is an easier way around.

Thank you for reading and in advance for any help.

Hey, it’s looking really cool already!

I’m sure someone will show up with better alternatives than mine, but here is my take:

I would consider having the big blue sphere in a separate effect and, for the lightning animation, I would spawn a plane between the caster and the target. In that plane you would have the trail animations only. Then, in order to mimic the projectile “flying” towards the target, I would scroll the texture in direction of the target. Once the lightning hits the target, the scrolling has to stop, so the lightning doesn’t go beyond the target’s head.

Alternatively, you could change the origin of the plane mesh so it’s on the front edge - or change the pivot on UE (I think it’s possible). Then move the plane entirely towards the target (do not scroll the lightning texture in this case) an make it stop once it hits the target. As it travels, you scroll the mask texture/change values so the mask gradually reveals the lightning.

There should be masks for masking out the 2 tips of the plane so the lightning does not go beyond the target and do not “bleed” to the back of the caster - so it always start on the big blue sphere and always end on the target’s face.

For this, maybe try erasing some of the outer glow it has? I mean erase the grey areas around the main lightning body, but not completely…just make it more transparent (less white) so you can crank up the HDR without losing the silhoutte you want for the lightning.

1 Like