UnrealEngine5 - Niagara - Tentacles

ezgif.com-gif-maker (9)

Hey everyone! Here’s my first activity on RTVFX.

I just wanted to share with you my current VFX work in niagara. :grin:

First iteration
with only one ribbon per system

Second Interation
with multiple ribbon per each parent particle


Everything works from one system and two emitters

A bunch of user parameters to control tentacles behaviour

Inspiration from RETUNRAL

Thanks to GDC and Risto Jankkila for this presentation


Looks great! How does it look in motion?

Thanks :grin: I’ve attached two links up there where you can see them in motion (before the image)

Hey it looks great, how are you changing the behaviour on the scratchpads?

1 Like


You can start from One tentacle by adjusting the behaviour of your particles by ordering them in scratch pad (Execution Number) and them count the distance between CurrentParticle and ParentParticle, so if the distance is going to be more than Distance you set, then you need to adjust velocity, to attract CurrentParticle to his Parent, until Current Distance is more that you set (to do that - search some information from videos i added)

Soon I’ll post some screenshots from my scratch pads. Hopefuly i explained enough for you, to start some researching process :grin:

1 Like

Alright, I am doing my own tests, but I still don’t know what are the correct variables, When you set MJ Ribbon ID do you set Ribbon ID to follow the parent emitter?, I am also getting trouble finding CurrentParticle and ParentParticle Variables, where are those defined?

Sorry for so many questions I am just in the learning process.


Actually I made a following stuff in update panel inside MJ(multiple jellyfish :sweat_smile:) Velocity to parent

Inside MJ Ribbon ID set i just reorder my Ribbon Particles according to the quantity of tentacles and their length for each parent particle. I just take Parent’s ID (or exec index) and then transfer it to Child Emmiter by attribute reader (you need to place your emmiter’s name in it then)

After that i multiply my burst by TentaclesQuantity X Length X ParentBurst to rearrange Ribbons attributes like RibbonID, unique ID and Ribbon order

Sure, No problems :grin: I’m happy to share my experience))

1 Like

Thank you!

So far I have managed to do the following: take parents Execution index with particle reader and place it on a new variable. Then I understand you tranfer some property to the child but I dont know exacly which one, the execution index? do I tranfer the execution index to the child?

How to do that?

After that I understanf you multiply burst by TentacleQuantity but I dont understand the information about lenght and parent Burst

Thank you!

It will be very helpfull to check the screenshots! thank you again!

1 Like

Damn, sorry for waiting)) I probably missed your comment.

From parent emmiter I transfer its unique ID, to attach position of each lcoal zero particle (N × TentaclesQuantity × Length) to N’s parent position.

Probably before multiplying them try to make a single tentacle, just to understand the whole math. After that it will be a little bit more understandable how to spawn and reattach more tentacles.

Also, about the update, I’m trying to figure out how correctly work with ue5.1 GPU ribbons and their distance field gpu collision, so after that I want to make a big update of this thread :sweat_smile::grin: Hopefully my New rtx 3080 will help me to make it better and faster :hugs:

ezgif.com-gif-maker (9)

Check this out! I’ve figured out how GPU Ribbons and DepthFieldCollision works in UE5.1 :octopus::

That’s why I’m going to make my first tutorial and publish it on my Youtube channel. If you read this - it would be honor for me if you’ll leave a like under this video and subscribe :heart_eyes: