Fade out materials to reduce overdraw

I have a lot of smoke particles and I’d like to have them not draw when the player is close, to prevent massive framerate drops from overdraw.

I found this tutorial(, but this seems like it’s just for hiding clipping artifacts when particles are too close. How do I make it so when the particle/material is totally faded, it doesn’t draw at all?

Thanks in advance!

You cant control it with a material. You need to cull the polygons that should not be visible.
Even if your Material is completely translucent (Opacity 0 everywhere), it is still drawn and causes Overdraw.

Look up LODs. For Particles, Cascade provides a LOD feature which can be used to reduce Spawn Rates of Particles and such.…eSystems/LODs/…es/HowTo/LODs/

UE3 had this as a feature within cascade: it had near and far clipping distance for particles, and indeed it was useful to prevent massive overdraw from looking at particles up-close
I always wondered why it never made its way into UE4, it’s a no-brainer

@Raildex_ LOD will help for far distance but setting it up for near distance would be cumbersome and even counter-productive (it would mess up with scalability particle LOD bias)

Thanks, but I don’t believe LODs would work (at least not if your game will have scalability options) because the LOD distances can be modified by changing the view distance setting - so if someone with an older computer set their view distance to very low, it’d automatically switch into higher LODs even when the particles are close, and they’d get slowdowns from overdraw. Also someone with a faster computer set their view distance to very high, the LODs would stay at the lower ones more and they’d get reduced spawn rates :confused: So this would make the scalability options kind of useless.

EDIT: Chosker beat me to it. Anyways there must be an option in cascade to do it right?? I believe smoke particles stop drawing up close in Fortnite but I’m not sure how they did it…

You could hook up the particle alpha to an If node, and if it’s zero, offset the verts so they collapse to the origin.

Oh good idea, I might try that!