Hey all, I’ve been working on an outdoor scene and I noticed that alot of my foliage looks a little grainy / noisy.
Here’s a screenshot: UE4 - Noisy Foliage - Album on Imgur (Sorry for external link ran into issues embedding it in the post)
Anyway, a bit of background info: I’m currently using Quixel Bridge assets for the foliage, and I believe I set many of them too high (I imported the 8k/4k versions)
I’ve had to increase the Texture Streaming Pool size by quite a bit to hide that warning and I wonder if those could be reasons for why it looks grainy?
Is there simply too much foliage and its causing a visual overload? Or is it something else? I’m not sure, if anyone has advice or suggestions I’d greatly appreciate it.
Thanks!
You really cannot optimize a 4k image that is being used in an object who’s size is probably be between 256 and 8 pixel.
Its either insanity or not understanding how rendering works.
You waste texture both memory and rendering power.
power.
Use 1k images, see how that looks. Should that not be good enough try 2k.
Also, temporal AA should be OK. Sure, try other methods, but remember you changed it.
The grass material itself from quixel is probably very wrong.
you need a temporal AA node and per-instance fade in it. As well as a slur of other features you can find out either by studying up the subject or by breaking down the Kite demo / default tutorial materials.
Hey all, thanks for the replies!
The most success I had was looking into the AA method a bit more. I tried the other options that come with unreal and leaving it on Temporal AA had the greatest impact. Changing methods seemed to exaggerate my problem (which is what leads me to believe that I simply have an insane amount of tiny overlapping foliage pieces and the static is coming from moire patterns or AA being overwhelmed.)
For others, I found a little checkbox “Use temporal upsamping” in the AA section which seemed to help a decent amount as well. For this project, I think that made enough of a difference where I’m ready to move on, but thank you to all the insights about foliage, quality settings, and optimization - I will definitely be making use of those going forwards to avoid some of the other issues I ran into on this project.
Cheers all!
It doesn’t look like it… at least not from what I can tell. It’s a child of a megascans master material and I don’t see any Dither Temporal AA node. Strange there’s a difference then I guess? I assumed the project settings AA method worked like a post processing effect rather than a per material. The difference with the upsampling is very slight but noticeable even without the node on the material, but maybe I’m not getting the most value out of it?
TAA affects everything on screen not just the stuff using that node. One of the big complaints about it is that it has a tendency to wash out details on surfaces that don’t need much AA, but that is typically not an issue with foliage (in my experience) as they have so much high frequency detail that they usually benefit from some feature softening.
Also, doublecheck endabling/disabling transmission on the light to see if the sub-surf is wrong and causing the Pixellation.
Last thing, would be to add a mip offset to the alpha texture - because the materials can go bad at a distance like with hair, so you may want to use 1 mip before what’s called for forcing higher res - but thats really just on the mask, not the content/diffuse.
As always, if you make your own master foliage material, create an instance and utilize the correct textures within it, you’ll have a lot better result and a picture of what’s going on much clearer than just relying on the imported material.
You can also potentially do other stuff, like wind with a normal map thats a thousand times cheaper than vertex shader computations on large amounts of grass or trees in the distance…
there should be a few cpu gems on that and other improvements you can probably make.