Hi everyone! Still fairly new around here, but decided it’s time to start collecting my various VFX experiments here (hopefully on a regular basis).
Here’s some mesmeric orbiness from today:
I didn’t have a specific goal in mind here, other than getting some fundamental practice here in Unreal / Niagara with combining and scrolling textures, twisting UVs, playing with emissiveness along the rim of the sphere, controlling back/front facing rendering in Niagara. More things to come!
Well, you’ll find no argument from me on that point!
Here’s the muzzle flash from a 3rd person view combined with some locomotion (strafing left/right/forward backward). There is still an issue that I have to fix when firing + moving forward (the character currently runs into the muzzle flash).
yeah that looks quite nice and perspective seems to not break the size and volume of the effect. I take this is just a standard bullet, no further story then a kinetic rifle weapon that’s being shot?
Thank you! Yes, it’s a pretty standard projectile based weapon (no nyaan cats being fired from a cannon … yet!). I’m mostly experimenting with various elements (at some point I want to try and make it feel more explosive). But first I want to get a projectile impact in there, and then do some more work on the shield, which should be a bit more interesting
second though, thelp with the muzzle flash from detaching, you convert the bright flashes to “local” space and have them attached to the weapon position in the BP.
If you want things like the smoke to still live in world space, you could use the “inherit source position” module with a curve acting as a timed strength. So the smoke stays attached to the weapons position for a few frames, and then detaches itself, which looks more natural for things like smoke.
Hopefully this makes some sense, if not, I’m sure I could come up with a demo example.
I’ve been using the Spawn System At Location approach. I actually used the ‘Attach’ version when I started with the effect, but intentionally moved away from it because the muzzle flash felt very ‘stuck on’ especially during the weapon recoil (it is, after all, gas being expelled from the muzzle and gets left behind in the air). But as you’ve noted, I now have the opposite problem where it drifts away too much, which feels a bit weird.
Ooh, I did not know about the Inherit Source Movement node! I’ll have to play around with this one.
You gave me some ideas, and after mucking around a bit I landed on the following:
Still using the Spawn System At Location approach (using the muzzle bone position)
I get the actor’s velocity and set that as a User parameter “MyInitialVelocity”, and initialize all my emitters using that.
I use a dot product to push the spawn location of the niagara system forward a little if the player is moving forward to prevent that one-tick delay intersection.
Here’s a quick demo of the custom velocity inheritance:
There’s still a bit of drift when the player character rotates, but personally I don’t mind it too much. Don’t know how anyone else feels about the “detached” muzzle flash?
Just a quick one. Day 1 of projectile / concrete impacts! Layered some smokey elements, small/large debris, and some dust trails (I love how these roll off the statue). Still need to add some more projectile explodey type elements. Not very happy with the ‘hit’ decal that stays behind (needs to figure out something better here).
Been following this for a while. Loving the progress!
Two pieces of feedback: The rocky debris needs more velocity as they’re being removed by a very strong impact. Here’s some reference to help: https://youtu.be/PgV7dn_59YE?t=91
I also think your gunshot is a bit too slow, in reality the hit impact would happen faster.
Muzzle flash/gunshot is very impactful! There are just some minor nitpicks though, I’m looking forward to more posts.
Setting your emitter in Niagara to be Local space (Located by clicking on the Properties tab which is the first tab at the top of your niagara emitter), will make your Muzzle flash’s Position be Parented to the emitter’s position.
I expect you’ll want your smoke to linger a bit behind due to drag, so maybe keep that in world space. If you set your light and Muzzle flash (fire) to be in Local space, then it will always move fixed to the emitter without the any unwanted “lag” or needing to use inherit velocity.
Then in your Anim Montage or BP, you just parent the Niagara effect to your Gun / Rig and that should remove any 1 frame delays, artefacts or unwanted movement you had previously.
Either manually or by using the ‘Spawn system attached’ as mentioned previously.
Hope this helps and keep up your effects Journey! All the best
To address the “slow bullet speed” issue I reimplement the shooting mechanism using a hit-scan / line trace BUT the impact gets delayed based on the muzzle velocity / distance to target, so the shots aren’t instantaneous but they’re pretty fast.
This also required a reimplementation of the tracer. The bullet tracer is now a dynamic beam with a simple panning texture to get it from muzzle to impact point, using the muzzle velocity / beam length to determine the panning speed.
As for the impact itself, it got the following upgrades: a little flash, a slightly better bullet hole / wall damage decal, tiny / subtle dust hits, more chunky bits, and some tiny dust trails for the chunky bits
Aside from all the technical bits that I still need to fix (particle orientation issues), I still want to add one more dust puff to the hit impact, that hangs around a bit more. After that (and a breakdown, of course) I’ll probably call it for this one and start something new.
I made a breakdown of the latest version of the concrete hit impact to show the individual elements that make up the final effect:
If there are more specific things that anyone would like to see, feel free to ask!
In retrospect the grey background wasn’t the greatest choice (the elements are a bit hard to see). I’ll try a different backdrop for the muzzle flash breakdown.