Hi everybody! I’ve started learning real time VFX not long ago and Niagara is quite daunting to be honest
My goal is to, on death, have electric arcs running on this character. I figured out the way to spawn two particles and connect them with a ribbon. It works in Niagara, during game play the two particles pop correctly on the character but the ribbons are in 0,0,0 world.
Any idea on how to fix that? Is my approach correct?
This may sound obvious, but did you make sure your Emitters are set to local space?
If it’s just the ribbon that is out of place, I would check there. Its a checkbox under “Emitter Properties”
Now another thing, I like the beam emitter a lot more in this case but I have no idea how I can change the beam end according to those two particles I’m spawning. The beam start alternates between the two particles but keeps the original offset I give it:
The idea is to do the exact same effect with a beam emitter instead since the the behavior/look is more appropriate for this effect in my opinion.
Now when the beam spawns, one end flickers between the two particle locations but the other end stays still.
So more generally I’m wondering how I can set or update the start and end of a beam according to a particular particle position.
Honestly I’m not sure. I tried testing it out, but I don’t know. Maybe I can try again later.
A dynamic beam can change length, so I imagine if you use persistent ids you could get a particle’s location and update to that parameter. Not sure though.
Create two emitters, one is your source emitter with the source particles, the other one is your beam emitter.
Spawn exactly two particles with your source emitter. You can spawn these directly on your skelmesh if you prefer, via the SkelMeshLocation module.
Create a ParticleAttributeReader on your beam emitter. Create a custom scratch pad module (inside Emitter Update) which returns two vectors (positions), ‘BeamSourceLoc’ & ‘BeamEndLoc’. Read the positions of your source emitter particles via the Attribute Reader. You can do this via index, as you only have two particles it should be index 0 and 1.
Use your two new Loc parameters inside your Beam Emitter Setup module for Beam Start & Beam End
Hope that helps, haven’t tried this, so no guarantee that this actually works…
I am trying to making something like this too but I have no idea how do you get the position data from the particles and generate the link between 2 points to make the electricity.