Alright, so i edited it a bit, because i got a lot of feedback on reddit about the effect, mainly about the impact.
Also here is a little breakdown (?)
Disclaimer: i’m not a native english speaker.
So… First Let’s talk about the buildup. I used sample bezier curve to set a path for the buildup particles. For this, i used the VFX parameter binder script. This allows you to bind stuff (like gameobject’s position) to the exposed parameters of the VFX graph. Here is how my graph’s parameters looks like in the inspector:
Basically i sample a point of the curve over the lifetime of the particle and set the position in the update by that.
The only interesting stuff here is the “Trigger Event Always” block in the Update context. This triggers a GPU event every update and you can connect it to another spawner so this acts like a shuriken subemitter.
I have 4 of these main+subemitter systems, with 4 curve. One of these system also has a “Trigger Even On Die” block which triggers more particles with spherical movement.
They initially spawn in a small box, then immediately start to conform to a sphere’s surface.
To cover that a little bit there is bigger particle spawned on top of them with a different texture. It’s a bit hard to notice but here it is:
The projectile itself isn’t intresting at all, it has some velocity added to it and basically that’s all. Also the scale of the particle is multiplied by velocity. This one also has a “Trigger Event On Die” and as you maybe figured out, this triggers the impact.
Nothing interesting here either, random velocity added over time. The whole graph:
The hard part was tweaking the numbers (size, timings, lifetimes) until i was satisfied with the outcome.
I already has another idea for the next effect, so i’ll try to implement it as soon as i can, and post it here.