Closed Cheaterdev closed 6 months ago
Hi, I did struggle with that also.
I found
bool (*slSetConstants)(const void*, uint32_t, uint32_t);
SL_FEATURE_FUN_IMPORT(sl::kFeatureNRD, slSetConstants);
slSetConstants((void*)&nrdConsts, *device->slCurrentFrame, device->slViewport);
If you manage to get it working past that please give me a signe, I'm stuck with this issue https://github.com/NVIDIAGameWorks/Streamline/issues/16
Hi, I seem to have gotten past that can called it myself (although I called the function stub something slightly different, for NRD use only).
https://github.com/NVIDIAGameWorks/Streamline_Sample/issues/4
But I'm thinking nobody is using NRD via SL but maybe us three.
I did it slightly differently, as if I declared slSetConstants function pointer that clashes with the one that sets the default parameters that has a different signature. so I called it slSetNRDConstants
TBH this is kind of silly and confusing, I wonder if NRD integration even works at all. Have either of you gotten it to work since May?
Looks like it should work after last commit - function is there.
I've had that method working for a while but I had to use a different name than SetConstants which was already used by the normal SetConstants for the generic / common parameters for SL.
My problem was just that NRD would crash elsewhere and just not work and none of the documentation or code samples actually specify what is the correct usage. I have NRD integrated normally so I'm familiar with all the inputs etc, but it's the mappings / equivalencies to the SL textures that aren't all obvious 1:1 correspondences and this is a huge time waster.
Besides, NRD is basically obsolete now with DLSS 3.5 Ray Reconstruction coming out soon. Still, we need NRD as a backup, ironically, for non-Nvidia GPUs.
Nvidia, please, if you have time, make us a working code sample for NRD, that actually works in both DX12 and Vulkan. Vulkan seems to always get short thrift and never work on Day 1, I don't understand it. I sometimes regret picking Vulkan for my engine due to these dependencies not working properly in a timely manner. SER not working in Vulkan is a huge 30% performance hit!
The NRD plugin and docs were extensively updated in SL v2.2 for the "beta" release of that plugin.
Hi! There is no method to apply NRDConstants in the latest version.