NVRTX 5.0: a review

This is simply a short review of my time spent experimenting with NVRTX, Nvidia’s enhanced branch of Unreal Engine. Their modifications to UE4 included upgraded RTGI methods and denoisers, their RTXDI light sampling scheme, RT caustics and colored shadows (and general translucency improvements), and more. This is my review of their most recent Unreal engine 5 build as of today’s date. I’ll open with my opinion, and then explain the technical details.

Concisely? I feel like Nvidia has essentially given up on NVRTX in any meaningful way. They support systems that are now obsolete and lack any of the next-gen features or enhancements that may still be relevant. There are certainly some upgrades, but they are quite small compared to what could be possible.

I’ll start with every UE5 specific enhancements promised: the support for RT shadows and volumetric fog was not found in any menus (fog, light, environment mixer, etc) or in the project settings. It is instead located in the CVars and appears to be functional but unperformant. Similarly, the SSRT system met to help alleviate shadow discontinuities in nanite geometry was hidden, and when I did attempt to use it, it crashed my client. For previous features, UE5 DDGI did not work as expected and I was unable to make it initialize probes, even when following the tutorial steps and having done it successfully in 4.27. My UE5 client just crashed again but I’ll try to retest RTXGI, it does have many more commands hidden and streamlined like lumen.

RTXDI was what truly excited me. The notion of nigh-unlimited shadow-casting lights alongside lumen was truly exciting, but the reality wasn’t even more sobering as much as entirely confusing. No ‘local’ light, be it point, spot, or rect, appears to work with lumen anymore, even with RTXDI disabled. Directional and sky lights still work, as do emissives, and toggling on and off RTXDI for the former does nothing to that. Essentially, lumen for local lighting is broken in NVRTX at the moment. Furthermore, while ghosting and boiling is fairly improved over 4.27, it is certainly not flawless, and not production-ready in its’ performance cost. Assuming the most recent enhancements to the underlying ReSTIR algorithm are ported to UE5, this may change however.

Any of the previous features or enhancements to 4.27, including caustics, improved translucency, and more, are apparently absent, These were notably systems that epic had absolutely no replacement to, and would have offered an advantage to Nvidia if they could provide them.

In summary, I would advise against using NVRTX for any new project in UE5, in its’ current state. There are perhaps situations where DDGI is useful as a legacy technology, but that is about the extent of things. If NVRTX 5.1 can solve lumen compatibility, bring back RT caustics and refraction enhancements, improve and simplify scalability for RTXDI, and improve the performance of features most recently introduced, then I believe it would be in a state to be more generally considered for projects.

3 Likes

A few updates upon further experimentation:

Upon restarting the editor, sampled lighting and lumen for local lights does appear to be working. I have no idea why it failed initially, as no settings were changed, but it does seem that RTXDI and lumen are in fact cross-compatible. This excites me.

performance is not good, holding at 30fps at 1080p in stable scenes, and as low as 26 fps with fast disocclusions. The test scene is the UE5 ‘open world’ level with a directional light and 130 non-overlaping point lights as a basic test scene. Upon restoring some errors in screen scaling, I’ve discovered that full-resolution RTXDI does in fact resolve reasonably well, although performance leaves something to be desired.

RTGI without DDGI volumes doesn’t appear to automatically utilize Nvidia’s NRD system, which is curious.

1 Like

Ey! This is interesting because I was thinking to use it, so we are talking about the new one?
https://github.com/NvRTX/UnrealEngine/releases/tag/nvrtx-5.0.3-1

Indeed, I pulled it down only yesterday.

And you did Install all that nVidia says… like SDK of cuda I guess
well then I’ll wait a better version…

Thanks @jblackwell !

I’ve had issues with local lights functioning properly in just the original UE5.0 as well and then had to restart the editor and suddenly everything just started working again. So this may not even be a problem with the build your using.

But yeah thanks for this review and taking the time to do this, it was really helpful and answered every single one of my questions. I know now to just stick to the UE4.27 Caustics branch for the time being.

1 Like

It looks like Nvidia released NVRTX 5.1. I’m not sure if they’ve made any meaningful performance or feature improvements, or if it’s a simple update of their technology. Even if they did next to nothing however, Epic refactored their lumen and RT pipeline, and performance improvements might make RTXDI far more viable.

Based on reading the github notes, it’s the same RTXDI/ReSTIR, RT volumetric fog, visualization tools, and some ray-biasing support. The new addition appears to be support for shader execution reordering; I don’t have a 40-series card so I can’t test it.

1 Like

Hi @jblackwell NvRTX Caustics is out : https://github.com/NvRTX/UnrealEngine/tree/NvRTX_Caustics-5.1
I’ll appreciate it if you could leave me some feedbacks !

Cheers!
JW

1 Like

Oh, this is wonderful! I didn’t have my hopes up that the feature set would return, but I’m happy to see it has. My schedule’s pretty packed in the near future, but I’ll see if I can make time and at least play around with it a bit.

The biggest issue I had with Nvidia’s caustics implementation in 4.0 was its’ complexity: you had to enable the feature in project settings, tell lights to cast caustics, tell surfaces to receive them, and adjust several different knobs to balance performance and quality. It seemed simply too consumptive of artist time to be widely useful. If by some miracle Nvidia’s managed to refactor the pipeline on using caustics, I think it could be extraordinary.

Something I’ve wanted to try since UE5 came out is using stained glass to cast colored shadows, and having that light up a room in a given light color. That would require the caustics generation, shadowing, and lumen systems to all talk to one another, but it’s an affect I’d love to achieve.

I just tried building UE5.1 caustics,it failed and I’m trying to figure out if Nvidia’s updated the needed dependencies for VS in order to build their tech.

I got NVRTX-Caustics to build and played around with it a bit, it’ll take time to put together anything comprehensive. It’s a really interesting integration of the technology, that’s for sure.

I posted a (sort of) review of NVRTX_caustics, should be visible under the lumen or ray-tracing tags.