How can i do high quality reflections without raytracing in lumen?

Is there a way to change the quality of low poly reflections?

There is not without ray-tracing, unfortunately.

Everything is blobby because the scene representation that non hardware RT lumen uses is made up of signed distance fields- it doesn’t matter what they are, but they do not and cannot match the scene geometry. Post-process volume settings will let you include more objects in the scene, increase some aspects of the quality, and reduce noise, but only hardware RT can really make a close match between the game scene and the lumen scene.

I mean, you can bump up the quality of the distance field representation by a LOT before degrading performance…
It doesn’t have to look like a blob…

How would i do this? Where is the option?

On each of the mesh.

Distance Field Resolution Scale This enables you to adjust the quality of this Actor’s generated Mesh Distance Field. This setting has an impact on the size of the volume texture that is created.

Nothing changes. Guess i’ll stick to the blobby reflections.

The pixelation in that sphere looks like it’s coming from low resolution reflection maps.
You can change the sphere reflection capture to a box reflection capture.
You can also increase the resolution of the reflection capture texture, on the capture object.
As long as the scene is simple and you have sufficient graphics fill rate, it’ll improve things. If not, then it’ll reduce frame rate.

There is no reflection capture since these are real-time lumen reflections.

Oh, then that won’t work!

There’s also a “Quality” setting for Lumen in the Post Process Volume, documentation says it might affect this quality, but I haven’t tried it myself.
You can also turn off Lumen reflections in the project settings I think, and use reflection captures instead?
I’m not at the workstation right now, so I can’t verify, so I’d like to hear the result here too :slight_smile:

If you want to have high fidelity reflections, you should use ray traced reflections, instead of Lumen. But in UE5, ray tracing is broken and Lumen is broken too, so… I would use UE4.

How are standalone RT reflections broken in UE5 vs. UE4? Similarly, what’s wrong with lumen reflections? They’re built on very different pipelines, but I’m curious what the distinction is between different behavior and broken behavior.

Hi @jblackwell !

As we talked in the GI thread time ago, Lumen reflections were poor and not as defined as RT ones, also showing black areas in some meshes.

RT reflections are also broken because in some situations (I can’t find the sense), some objects creates a halo around them. I opened a (totally ignored, of course) thread about it.

So, for me that means to be broken, as they are weird and not working as supposed (I hope!)

Regards!

The only distinction you’ll get from here is probably " What I became accustomed to using this sh*t show of an engine" and “What no longer works the same as it used to which never made any sense anyway”.

If anyone used anything else programmatically, they’d be screaming bloody murder at the engine worse than the FCC was about Privacy/Inverted Buttons forcing you to buy - just recently :stuck_out_tongue:

At any rate, the reflections in ue4 have had issues for years. Run a search in the forums for “metal black”. There’s a billion compromises to make just to make the reflection (or box, i prefer box) capture work correctly in PBR materials…

Any update for this in 2023? Whats the most suitable option for good reflections without ray tracing hardware?

Either you accept the compromises of software ray tracing with Lumen, or you use the old tricks of the trade that have existed for ages (SSR, reflection captures, planar reflections, etc). That’s not to say software lumen hasn’t improved over the last year, but there is no comparison to HW RT.

2 Likes

If you’re really looking to improve lumen reflections to the extent that you can, increase the distance field resolution scale of a given mesh; it will at least make near-field reflections better, at a very large memory cost. To add onto @BananableOffense , planar reflections are the only non-HWRT reflection solution that can do parallax-correct, Gbuffer-accurate reflections, but they have a very large and geometry-dependant cost.

If you needed to do ArchVis with just SWRT, you could likely increase a number of settings and distance field resolutions to get acceptable results, but good mirror reflections are simply not possible on anything but the highest scalability levels with HWRT.

Do planar reflections support nanite, do you know?

Not sure. I wouldn’t be surprised if there are some issues with nanite + planar reflections, given UE5s full speed ahead approach on features. In other words, I suspect there has been so much focus on making sure Nanite works as intended with Lumen, bugs with other methods seem inevitable. But I haven’t gone out of my way to test it, since I’ve been using almost exclusively Lumen since UE5 EA.

1 Like

Lumen is a beast; I got to try it out in the newest version of Satisfactory, and it honestly runs and looks quite well as a tool even in open-world games (that don’t have Epic developer support). I was mostly thinking planar reflections bc some of the newest mobile hardware has support for nanite, and planar reflections have been affordable on mobile in the past.

I think 5.4 will be a very good version for lumen, if for nothing else than the adjustable lumen tonemapping tool to finally get reflection noise under control. Whether SWRT or HWRT, those are relatively unworkable.

@jblackwell Unreal Engine development is focusing on dealing with transparent and translucent materials. I can understand the annoyance of transparent materials when it comes to Lumen and SWRT.

I am an ArchViz creator and I work on creating Interactive Architecture. I have been working on optimizations and have faced difficulties dealing with Lumen and the glasses used internally. I have been testing on my desktop which has a Nvidia RTX 3070 and on my laptop which has a Nvidia GTX 1660Ti and I have noticed that it is mostly the transparent objects that have issues. I have seen a youtube video that may have potential for a work around however the example shown was of external glass.

Link - https://www.youtube.com/watch?v=lGly4zdQx6M

I am using the latest version as of the time of my message (UE 5.3.2) and have yet to test out making a substrate material with glass. I will try to experiment with cubemap with 360 panoramic path traced images of the internal sides. If I can achieve something with it then I’ll provide my solution (In reference to the previous youtube video). If I can avoid using planar reflections then I’ll be happy. I have to compromise performance for quality so any bit of trickery is welcome as I cannot compromise too much on texture sizes or geometrical details (I do use Nanite and LODs).

If you are interested in seeing what is in development then use this link anytime: Forward Looking - Unreal Engine Public Roadmap | Product Roadmap (productboard.com)

That’s it for what I had to say for helping, rest is just me blabbering/ranting.

All in all I do not plan to support SWRT later as new GPUS from Nvidia, AMD and Intel are supporting HWRT and the quality of Lumen is greatly increased when you have the hardware for RT. I’ll be using cloud streaming services in future for my clients so they do not have to have a powerful device to run my applications.

Example: https://www.youtube.com/watch?v=eJTNvSiCZY0 (No I’m not the guy in the video but he is a good guide to learn about Interactive ArchViz if anyone stumbles across this message)

I would also recommend everyone who are looking for new hardware to make a new computer or replace old parts that they look at GPUs with HWRT support and with good amount of VRAM. My 3070 is good for 1080p 60fps+ or 1440p 60fps ish with Lumen on epic settings with DLSS enabled but if I wish to run it natively then I would need to get a stronger GPU (If you want to have a high fidelity and high fps for real time rendering). The days of SWRT may be ending because just like having multicore support on CPUs started changing how hardware was made and used, hardware tracing is now already in its 3rd generation for Nvidia, 2nd generation for AMD, and Intel (although very new to making current line of dedicated GPUs and who knows if they will continue to make them) are all releasing hardware, even the entry level GPUs, with support for RT (even though the low VRAM of RTX 3050 is a joke) The big issue I’ve faced are lights since Lumen does not bother with baked lighting and movable lights take a toll on the GPU power and memory.

Regards,

Some ArchViz guy

PS: I’m still an amateur when it comes to Unreal Engine so if I have made mistakes then please let me know. If someone has a good solution then please let us all know. Thanks.