Raytraced reflections of reflective materials - massive noise?

Any way to fix this? I feel like I have tried everything at this point to no avail :frowning: . Any help appreciated!

edit:
It seems that it is being caused by material’s roughness. At 0 no noise occurs, increasing it introduces quite a bit of noise, and at 1 it turns into big splotches.

that’s “normal”. that’s how raytracing works. below 0.4 roughness it shoots random rays per pixel to capture the surroundings. this results in this form of noise. above 0.4 roughness an approximation or the surface cache is used. you can alter the limit by using the console command

r.Lumen.Reflections.MaxRoughnessToTrace .4

you will encounter other issues then. tsr generally helps stabilize it when standing still. but… the artefacts in motion will not go anywhere in the near future. i’m not aware to which degree this will change in 5.4. keep your eyes peeled.

Yeah, that’s kinda rough (no pun intended). Planar reflections were the closest thing I could get that made a good looking mirror, but I can’t seem to get those working with lumen. Is there some secret sauce to making a mirror in lumen? I have tried building 5.4 from the latest branch, but nothing improved :confused:

Hopefully 2024 will bring some goodies in this regard.

it’s not the mirror that is faulty. that obviously works perfectly. it’s the object in the mirror with the roughness and the reflection on it that produces it. if you reflect diffuse materials or materials above 0.4 roughness, they are just fine. you gotta be aware of that. you can reflect glass and chrome maybe sparkly metal car paint if it’s within visual rough threshold. everything else should be a natural diffuse rough mix. ambient reflections. shiny doesn’t really work. unless it’s a “flat” reflection. car paint btw has 2 layers. the paint and the clear coat reflection. that is usually flat and you blend it with the paint color. that’s the way for your example. maybe you should change the shader.

Could you try doing what you described and see if it looks fine? I’m not entirely sure about everything you mentioned, but if you can quickly prototype I would be grateful. In the meantime, I’ve found that the screenspace reflections work as intended. I can keep lumen as gi/reflection, but use screenspace for the mirror material and then use a planar reflection. Fps takes a hit, but at least there is no noise…

Use TAA or TSR as your antialiasing method

That makes it like x10 worse when moving. Temporal aliasing has huge ghosting effect in reflections, and completely butchers it.

sure. i got a testbed for all of this.

clean chrome. clean carpaint. rough glass (this is lil bit of a cheat, rn). it does not appear as glass in the reflection in 5.3 (work in progress in 5.4, afaik), but the reflection works. and everything is pretty much stable.

But so, if you have a material at 0.5 roughness, does it create noise?

no

Ok, let me do an example, and you replicate the material.

Box is
image

With no aliasing

okay. with tsr on.

Ok, I can see some noise popping in, but not nearly as much as I seem to have. What if you try moving sideways a bit? Could you perhaps apply some material to the floor, like an asphalt?

No aa:

doesn’t matter if i apply asphalt. i wrote that down in my first reply. aliasing in motion is normal.

this is normal temporal instabilty. just deal with it. you have to design your graphics around the limitations of realtime raytracing. it’s good but it’s not realtime pathtracing, yet. the amounts of samples required won’t run in realtime. this is a perspective from me as a coder and technical artist. it is what it is.

Hmm, I’m trying to design a vr driving game, and mirrors naturally are of utmost importance in a car. With ground not being so flat in color as yours, for example asphalt leaves huge streaks is using taa/tsr. Completely unusable for this. Is there a better approach to creating a mirror? Scene capture has nice clean picture, but putting it close to objects enlarges them so that’s not realistic at all. As I mentioned previously, the planar reflections work the best, but take more performance than raytracing.

streaks? you got a sample of it. i’m not sure what your issue could be. sry. i put a woodfloor underneath. it’s nor breaking tho.

maybe you should disable screentraces? i rendered all of those clips without them. i know they are a bit of an eyesore under certain conditions.

Yes, I have disabled screen traces as well. Could you try a grainier texture? If you check my video up above, you can see how terrible the ground looks as soon as I move.

This is with the wooden floor. Better than asphalt, but still pretty terrible. Seeing this in the mirror everytime the car moves would destroy any immersion.


e

what’s the roughness of the mirror there? doesn’t look like 0, tbh. also… driving game. do you need this level of detail in the rear view or side mirrors? pretty hefty rendering when you mostly care about looking forward and racing. i’d think about if this is worth the hassle. there are cheaper alternative. cameras and render targets. hmm