#▫️Cyberpunk 2077 Ultra+ 2.13 Patch Patch Patch Patch
1 messages · Page 2 of 1
CTRL + SHIFT + I in vscode
I’ll do that now
I just need to sort out the timer issue that’s popped up all of a sudden
Once that’s sorted ReGIR is golden
I'm quite proud overall of ReGIR Insane, its probably the highest quality I think PT can do right now with quantifiable gains
moreso its designed around 4k Balanced, so 1440p Balanced should be doable for 4080's, 4070's. 4k Performance as well for a 4080 easily
ReGIR Low should be an interesting choice, I think it can easily replace PT 2.0 for the most part, ReGIR Medium should also be playable for most GPUs
High imo, if you can go Insane do it and otherwise bank Medium performance probably, High is just for those who are FPS sensitive
didnt seem to do anything
do you have this extension installed?
nope
honestly never used Lua before this, more of a C/C++/Python fan
easy enough tho
install it, otherwise vscode thinks lua is just text xdd
maybe you've got other keybinds, right click inside the document and you should have the "Format Document" option
yay, nice work 😊
it was a screenshot from inside the github's diff
i'll try and get a super fast mode working again tomorrow
without spatialnumsamples
i don't think they're needed
yep that's how i always target it
"insane" users tend to be like "hit me!!!" ... they were the people turning on RT skylight and RT water in Hogwarts Legacy and getting 70 fps on a 4090 😂
high are like "i want insane settings but 100+ fps!"
hogwarts is still running like ass, truly a broken mess.
have you tried xess 1.3 in cp77 yet?
do you use my ultra+ for that?
oh, no! how is it?
i've tried everything there is, it still stutters like there's no tomorrow
what hardware do you have?
pretty damn good. i dont like upscaling as a solution for gaining fps because devs cant optimize their games. i also dont like FG. FSR has no native resolution rendering, maybe it works with CyberFSR and a custom resolution, but FSR2.2 has a lot of shimmering. i really liked how xess looks overall, it also removes TAA which makes the game look like you have myopia. previously xess 1.2 had some weird ghosting issues, mostly trails. if it rained you had static vertical lines all over the screen xd. now with 1.3 the quality is way better, didnt see any imposing trails from ghosting as in 1.2, they've added native AA and it works way better than TAA + way better performance
6950xt
im not trying to fix hogwarts, im not into playing games that much, i only like to fuck around with mods and reshade
oh nice, i hate that TAA look
all good, hogwarts is fixable, it's a pain in the butt though
maybe it's a specific on my setup since i have a super ultrawide monitor and i'm not gonna play on a lower resolution than 5120x1440 😂 🔫
since the game doesn't stutter on a lower spec PC of my gf
haha, thay may be part of it 😂
they have a lot of their own UE plugins (or warner bros plugins) in there and i don't like a lot of them
I would have to see some footage even on a phone to tell you how to fix it, but I'd be surprised if it's not fixable.
not worth the effort to fix a broken tech demo 🤣
most of Hogwarts issue stemmed from trying to keep the streamer cache 95% full at all times. so when it needs to stream new assets they have nowhere to go
also FG works really nicely on Hogwarts. it's very very smooth. unfortunately LukeFZ's FG breaks the FSR1 de-dither pass I've hacked in there but it's fixable with Reshade. Luke isn't sure why it's disabling FSR1
the games companies have been treating streamer caches like "caches" for years... the reality is it's somewhere between a buffer and a cache
a better name for it would be a "transmutation streamer" and not call it a cache at all
that reminds me I'm supposed to send an email to Epic on this topic 😂
wasnt the HDD mode thing that fixed it, def that culling parameter
and formatted too
PrecacheDistance = 20.0
MinStreamingDistance = 40.0``` I think this is a good setting, 50/60 push PT too hard imo
I'd rather boost MaxNodes for more lights/geometry
REGiR is an improvement over Restir?
ReGIR feeds ReSTIR, but its a world-space way of sampling lights vs the screen space way that ReSTIR usually uses
once the weird error log issue is fixed for the Fast Timer, ReGIR is ready for use
so theoretically yes, definitely I'd say yes at Insane and to a degree High
Low/Med are more on what you value
I have a 4090
I'm using DLSS Balanced at 4k 4090, getting a good 50-60FPS after framegen
highly playable
I just found this mod, are there any comparisons of what it adds over max
I saw some of the fixes it does
But didn't understand what it does to increase quality
@hybrid violet can you also do a mapping so that we wont have to repeat all the logger/prints and if branches? for now i think it'll be enough to do as so:
8: var.quality.LOW,
10: var.quality.MEDIUM,
14: var.quality.HIGH,
20: var.quality.INSANE,
}
local quality = qualityMapping[shadingCount]
logger.info("Guessed quality is", quality)
return quality```
and logger.info(msg) instead of the print(" ---- Ultra...")
So there seems to be a pretty big performance hit? I think on 4K Balanced vanilla max averaged like 90 fps
at some point yes, gotta head off to sleep then work
yeah its a decent hit. this is in like the deep city though, and also on Astonishing density + all LOD mods
What are the working LOD mods for the game? Always has been the biggest issue for me
big ones are Next Gen Environment LODs, Not So Good Draw Distance
prob dont use the Extreme version due to CTD issues, just Performance
do you have a list of recommended mods apart from those?
dont take it as a bible or with support, what I'm using:
only one thats complex is the 01 Fuji and Relight stuff
rest is drop and go
if you have HDR or honestly in general (i dont know about SDR but I think it works) this mod is a must
reworks the actual LUT/Tonemapping code, not a reshade filter
yes I saw that one
on ReGIR High (bit of smearing on far NPCs cause 2077 PT has a bug causing smearing when the camera is 100% still)
no spatial disocclusion samples, so no boost to areas being disoccluded due to I assume no motion vectors from camera movement
Is REGIR supposed to be used without RR? because with RR i see lights constantly changing brightness.
with RR. Ray Reconstruction is two things
- ReLAX denoiser instead of ReBLUR, its a superior denoiser inherently.
- nvidia doing DLSS things to not half-res/downres the image along the way and feed the upscaler a high quality image
plus I think it enables ReSTIR GI (better way of doing Indirect lighting/secondary bounces on rays being traced, ambient light basically)
but with ReGIR its a different ballgame
the way it samples light and decides what to use is very different, its going to have different behaviour
Feeds both Direct and Indirect lighting (ReSTIR DI and GI)
ReGIR's big lever is the shading count. determines the quality of light sampling (more defined lights/shadows and highlights), and your FPS.
at low levels it turns into like an optimisation, less quality PT but very stable
highest levels ReGIR's better in all regards than pure screen space ReSTIR
to use it you'll need to wait for the next Alpha release (also the timer bug it has on github will need a fix)
oh, i downloaded it from your fork
Thanks for the detailed explanation by the way
uhm reinstalled it and suddenly the issue i had fixed
okay it looks perfect now
When you use it, big thing
In the debug menu after loading you need to scroll and find ReGIR DI
The script that ticks that after load isn’t working atm
Big performance boost will occur and better direct lighting
oh okay thanks
Will need to be done each save load until that’s fixed
Regir improves performance?
yes, some people seem to like running it at wrong settings like 40/80. who am I to judge their wrong decisions 😂
yes. maxnodes can actually slow down fps with PT on lower PCs. if I set it too high, frame time blows out. frametime should be capped by the max streaming time per frame, but I think a lot of their logic around the streamer is broken
Cyberpunk 2077 - Ultra Plus mod development
hey 😊 mostly it increases the sampling of path tracing. so on the fastest setting there are about double the samples of vanilla PT, and fixes some frame timing problems (how much time is spent on different tasks every frame)
everyone has a 4090 except meee 😭
that's for the new ReGIR mode that's much higher quality (much less noise) than vanilla PT
different people have different sensitivity to PT noise. the ones who are really sensitive to it currently run RT+PT
you maybe want to have a better look at the Ultra+ mod page, most of the best LOD mods are linked there, and there is a lot of information in the sticky post, and first YT video by KrushSG too. it's not the normal yada yada 😊
oh! I still need to fix this! I wish I could pin messages here. @minor smelt could you please pin this 🙏
I think we can add some insignificant movement to the camera each frame hopefully to bypass the game skipping temporal when it thinks the camera is still. it's pointless it doesn't improve fps
create the issue on github 😳
so that just needs fixed? wait 0.6 seconds then enable ReGIRDI?
I'll take a look and merge
I have a migraine. need some low brain work rn 😂
if you want the best performance, use PT20 Fast/Performance or Medium/Balanced (what I use)... it's way faster than vanilla with very little downsides (and about to get faster)
keep in mind v4.0 alpha is a bit like trying to drive a car with engine bits everywhere at the moment. we've been testing things and about to bring it all back together 😊
Thank you for all the detailed replies and for the mod
I won't start playing the game proper any time soon so I will follow the development of the mod
Done 😁
thank you 🙏😊
It’s more the fast timer is bugged. The exact same code was working on the current alpha
So the DoReGIRDI function isn’t called
Log is spamming an error
The way it’s setup, load with GI and DI but no separate denoising. Then once the game loads, turn off DI, wait 0.6 seconds then re-enable it, then enable separate denoising
All that, and you have fully working ReGIR
The detection is based on HaveWeDoneThat. That Boolean is reset to false on init, on tweak, and importantly on loading screens. When that happens we also turn off separate denoising so it can be re-enabled at the right time.
oh! okay 😊 will fix
okay easy, ty
I have to get some work done but will hopefully sort it out after work while I'm having insomnia 😂
oh no it's not rebased against alpha11 😭 lol
🤔
idk ¯_(ツ)_/¯ .. all good, half way through 😊
i'm no git ninja, but i make it work 😂
i tried to integarte this but the linter didn't like it 🤔
small update (tidyups) pushed to https://github.com/sammilucia/cyberpunk-ultra-plus/tree/main/UltraPlus and version bumped to v4.0-alpha12
okay @hybrid violet i've just applied the speed hack for RT+PT and PT20 and bumped to alpha13 ... basically all this does is
- forces LocalLightImportanceSampling (via commonfixes) to force LL sampling to env map
- forces FallbackLight (commonfixes - required for above to work)
- sets SpatialNumSample to 0 for all RT+PT and PT20 quality levels
- increase
NumEnvMapSamplesto 32 for all of these (~0 fps hit after recompiling shader), several fps boost with no quality loss
i think this can be applied to PT21 as well, but i haven't done it because i can't test anything right now. perhaps you could have a try with ReGIR and PT21? ... in theory if locallights are sampled to the env map, spatialnumsamples serve no purpose at all
random thoughts: i wonder if this changes things for emissive triangle lights 🤔
i'm also going to suggest we rebrand ReGIRGI as "PT30" mode 😊
hmm, seems i've got it backwards! LLIS and fallbacklight both need to be disabled for PT20 to work!
Fancy that
Fallback light I think shouldn’t be necessary surely
It’s rudimentary sampling as fallback, lots of bias if it’s on but theoretically less disocclusion
PTNext
PTNext (ReGIR) featuring ReSTIR - beta
i'm just about to push a bunch of updates/fixes
yes it looks almost identical using the env map, just a lot faster!
nice 😊
Hmmm to my understanding the env map is unused altogether
The environment map is emissive triangle lights, without that there’s nothing feeding it
Without it it’s just naive sampling from the BRDF and sent into ReSTIR via some custom method they added
Leaving the environment map blank
oh it's definitely used. if you disable fallback lights and have only 8 samples for the env map, it looks terrible
but there are flags that suggest it's "off"
it's working for PT21 too
Hmmmmm? Curious, need to test that in pre denoised mode
If you can send me the settings ur using for it
There’s so many pathways they’ve made because my guess is they were early adopters
Tech has evolved as they built it
Even Nvidia is still catching up to their own research papers
5000 series will see conditional ReSTIR PT with mutations + NRC allowing extremely high quality realtime PT
Maybe even + PT volumetrics
yep, i've just updated the git
- biggest problem is regir activation isn't working reliably, there's a better way to do it (not fixed, see below)
- i think the config.* variables need to be moved to variables.lua var.config because they're now shared across ui.lua and init.lua at least
- fixed LoadSettings() not being called
- disabled LocalLightImportanceSampling and EnableFallbackLight which allowed SpatialNumSamples to be set to 0 for PT20, PT21, RT+PT, which is much faster. i haven't tested with ReGIR yet
- adjusted DownScaleFactor so they're all uniform (again, didn't touch ReGIR just get
- fixed 90% font scaling not working
- adjusted window size
ReGIR is a bit of an odd case, indirect quality isn’t really boosted by raising indirect variables
It’s raised by boosting primary lighting which needs usually a lot of shading count to restore the lost highlights/shadow clarity
So it’s best to conserve performance elsewhere and just throw it all into ShadingCount
When that’s high, the image is really really clean and quality
Time spent trying to get another bounce in SHARC could boost the base light sampling used for it to even pick up there’s a light there
Light slots can’t be lowered as many scenes approach 300-500 lights in the deep city and it doesn’t touch perf much
If you have any other suggestions on squeezing performance elsewhere we can use that to further raise Shading Counts
I haven’t managed to get beyond 20 reliably on a 4090 on Balanced, namely when you hit the deep city and are sampling up to 500 lights you start to bleed frames down to 30fps base on Insane
in that case i'd be very curious to see whta happens if we e.g. set DownScaleFactor = 6, and try and get SpatialNumSamples = 0 working
for regir
My conclusion from repetitive testing was, I don’t think Rays or Spatial Samples are doing anything for ReGIR
Perf was not changing as you expect
But I need more reload restart game tests to be sure
Downscale factor above 5 wasn’t reliably boosting perf either so I was hesitant to change it
right. i'm going to create a branch to test it without spatialnumsamples
it does quite noticably on my pc. but 7 doesn't
24 shading count on ReGIR insane would be super high quality I almost contemplated reworking the quality levels. Maybe removing Vanilla and just adding an Extreme before Insane
Extreme being playable and Insane being try your luck
30 is the dream
All ReSTIR micro detail basically restored, high quality sampling and way more light samples than screen space, holds up entirely in motion, holds up sharp shadows at most angles
20 does all the leg work, it’s like imperceptible for most but higher quality base, just a little bit of micro detail sacrificed in bright spots and a lil difficulty in heavy motion keep coherent light but better overall definitively than (pure) ReSTIR for clarity and overall resolve
And consistently ReGIR holds up better in stability and noise
mm, i can even run it, which is pretty crazy
It’s got this weirdly persistent base cost to it
Nothing I did changes the performance characteristics of Shading Count
Massively boosts perf when the two are used together
Without DI I wouldn’t ever bother with GI it’s just too expensive for minute indirect benefits
Nice
so i think insane can go to 20 no problem
Try hop on a bike and drive deep into the city
mind you i'm in a fairly low cost thing
That’s where I see perf really take a hit
Maybe I’ve overcooked with my mods
And I’m just limited elsewhere
Also 4K?
And what DLSS level?
do i actually want RTXDI gradients enabled?
it's possible.... screen overlays and 4k texture mods can cause seerious problems with this streamer bug
okay!
I’ve gone ham
But only on graphics no content
Do you have the environment LOD mod
Or just better distance
daaamnnn
Also maybe astonishing density is doing it lol
that will hurt
ReGIR performs crazy good in like the exterior
Desert regions, top notch perf
How much FPS with High?
Did you load it with DI btw or cycled it back on after
cycled back on
can you please tell me the exact sequence we need?
- disable ReGIR
- disable ReGIRDI
- disable RTXDI separate denoiser
- enable ReGIR
- enable ReGIRDI
- enable RTXDI separate denoiser
?
we can adjust the skin quite a lot with these, but they don't hot load
[Editor/Characters/Skin]
AllowSkinAmbientMix = false ; (true)
SkinAmbientMix_Factor = 1.0 ; (1.0)
SubsurfaceSpecularTintWeight = 0.5 ; (0.3)
SkinAmbientIntensity_Factor = 0.3 ; (0.4)
SubsurfaceSpecularTint_R = 0.26 ; (0.21)
SubsurfaceSpecularTint_G = 0.17 ; (0.21)
SubsurfaceSpecularTint_B = 0.19 ; (0.29)
So, loading the game
SeparateDenoising disabled (key!)
ReGIR enabled both GI and DI
After game load
Disable specifically only ReGIR DI
Enable ReGIR DI
Enable Separate Denoising
This has to happen every load, init and save loads
I’ve set up an observer that will handle save loads
And confirmed reliably it works
ReGIR GI (or more so the enable flag for ReGIR) should never be disabled at any point when using ReGIR
Just the UseForDI flag after load then re-enabled
During load it should be enabled
My code for it was working reliably before I merged not sure what broke tho. Namely the fast timer is spamming the log now
Code is the same too
This as well was copied directly from the recommended method by CET
okay
there's also an interesting effect
- disabling separate denoiser
- disable ReGIR (but leave ReGIRDI enabled)
- disable ReGIRDI and re-enable it
- enable ReGIR
- enable separate
(without loading a save)
i wasn't trying to load a save, i was trying to do it live in game
I noticed loading with ReGiR and triggering it after didn’t look the same
Also perf difference by memory though so many tests my memory’s a blur
But to me loading with ReGIR had a big difference . Though cycling DI with ReGIR base off won’t do anything
Cause without the Enable flag it’s just disabling ReSTIR RIS direct lighting for a moment, you’ll loose all direct light but ReGiRs grid isn’t loaded
Basically the key sequence is separate off during load, but ReGIR fully on, then cycle DI for the screen space ReSTIR elements and allowing separate denoising
Also, not doing that has a big difference in look. It’s an option
okay here's my crazy changes so far https://github.com/sammilucia/cyberpunk-ultra-plus/tree/regir-performance-improvements 😂
Hmmm do note in say Jackie’s bar scene there was > 512 lights. The engine didn’t allow me to go beyond 512, but slots being below lights in the scene causes flickering between sources in the grid
At 32 for example you’ll see dancing lights
Being slightly over doesn’t cause much flickering (have to focus on it and in specific spots)
Shame cause with 2048 or 4096 we could do emissive triangle lights plus ReGIR for ultimate quality
Also AllowRTXDIRejitter must be disabled for ReGIR
Breaks npcs unless we fix that issue
BiasCorrectionMode needs testing cause I found 3 consistently gained me FPS
But not sure if that’s for everyone
Home soon and can test 🙂
roger that. I added some notes in the branches init.
as long as that's not disabling it 😂
I lowered commonfixes lights to 448 but just raise it back up again.
also I'm getting disocclusion noise on doors, we might need to increase disocclusionboost
Yeah maybe also need to keep the fallback light for ReGIR
And fallback sampling
Both
ReGIR truly solves a lot of its disocclusion with more ShadingCount
But I agree moar samples
ya know we could probably force a quick save then quick load 🤔
I'm really just trying to avoid enabling SpatialNumSamples because they're expensive and not great
Sadly I think it’s necessary for just this reason, the algo doesn’t have a way otherwise to handle movement
Though their own docs said 1 sample should be fine
And 2 is golden
If no spatial gains perf for ReGIR we can try raising shade count
But it may not beat the results
Also try a small radius
Big radius big cost
yes that's all I'm thinking
20 radius is used for one of the two lighting types in the portal bridge thing
Remix
a lot of the time I use frametime saved to increase quality elsewhere. at least for Medium > Insane
I also had the don't unstream thing and it seemed to behave itself
Which one?
which radius?
Spatial radius
the one you said should probably only be set for 16GB+ cards 😂
If that’s 64 each sample will be more costly
Ah good. Well no more pop in
Or more so
Pop out and in and out and in
hopefully. yes. it badly needs a denounce
**debounce 😂
it's so fixable though!
like seriously give me 30 minutes with the source code
even just compare the streamer code to 1.63 which worked fine
I wonder what this does inkInitEngineState
the ideal answer for ReGIR is
- do the things
- hot reload engine (without loading a saved)
- do the other things
oh! RedHotTools has a hot reload function! https://wiki.redmodding.org/cyberpunk-2077-modding/for-mod-creators/modding-tools/redhottools
oh nice
well
local timer = activeTimers[i]
figured it out
declaring timer locally there which wasnt done prior
which removes the global timer from the function
so the fast vars dont exist
local is the new part
or sorry is the old part
wait what
current
prior
trying now to see if that cleans this all up
prob should be this right
semi works
this is turning itself on too early
way too early
but the RTXDI thing applies at the right time now
I think there's also the problem that config = {} is defined in ui.lua and init.lua... it should probably be moved to variables (as var.config = {} ?) so it's common to everything
I added another line to DoReGIR() that was me, I broke it
I can't understand nativeDB at all
oh this is pre-that
I think
if Detector.isGameActive and isLoaded then
this is needed too
isLoaded
only do Updates after Load
nope something else doing it
Cyberpunk?
oh I just hadnt applied it on my local copy
it works
I've done.thay so many times 😂
should contain the 3 fixes
tho its a bit out of date lemme merge in
some aggressive culling happening here
raising the offset fixes it but lemme test whats needed
reading psiberx's code 🤯
how do you get such low fps at balanced 😂
?
you have an AMD CPU?
i9 13900k
ah, nevermind
hey, what about toggling RR, instead of loading a save (to force a re-init)
psi says the engine can't directly be re-initialised, but try toggling some other settings that causes a re-init (instead of loading a game)
makes sense
I found a good spot for tuning ReLAX and notably reduced some smearing
basically tuning some stuff towards CDPR defaults, restoring a lower history set and relaxing PhiLuminance a bit
yep, I agree
CDPRs defaults were okay for relax (mostly), it's mostly fixing RTXDI bias and envmap that helped it a lot
relax isn't used at all for ReSTIR/ReGIR
ReLAX is def used to denoise ReSTIR/ReGIR, without it you'd have pure noise
left would be no ReLAX
ohh the Luma weight I kinda get it now
wdym?
I've added some issues to git re what we've been discussing
I'd better get some sleep 😊😊 nn
just thinking.. are you running ReGIR at half res diffuse? (does it even matter?)
been doing so but I dont think they work in PT
made some discoveries on how to tune the denoiser towards pure disocclusion focus
so fast shouldnt drop below 4, cause history frames absolutely shouldnt drop below 3
cooks things if it does
spatial variance threshold at 0, helps reduce smearing a solid amount by always doing spatial variance
@hybrid violet if you can, can you please test if these changes work as intended? https://github.com/sammilucia/cyberpunk-ultra-plus/pull/7
should have the time tomorrow, almost out of time tonight
some ReLAX observations
- Anti Firefly, little brutal but reduces smearing
- Prepass Blur, probabilistic should use a decent amount of it in specular
- Lobe Angle Fraction decently high to avoid smearing
- Low as possible depth threshold within their values, same for disocclusion
- keep HistoryFix to 3, anything else is broke
- Same thing keep fast at 3-4, 4 honestly, no diff below 4 just a quality loss
- Phi Luminance being as low as CDPR had it makes no sense
- VirtualHistoryClamping is a must, specular is where alot of smearing can occur
- Nothing will truly improve the image outside base image, the source of actual smearing beyond what the denoiser does is PT
- AtrousIterationNum costs FPS but is good for IQ
can prob keep Atrous at 6 for Insane, 8 is likely overkill
going to try again raising Ray count to 3/4
with Probabilistic the impact is not high at all on FPS but good IQ gains
hmmm suddenly getting some large stutters into bike rides
checking its not the BLAS/autorotation settings
okay got it, cant drop spatial variance below 2
Tunes ReLAX and ReGIR further for better quality overall, fixes DI function not applying after load
excited to find out what is changed now
It’s fully functioning outside ini detection
Once that’s fixed it also just needs to update the sample count it’s detecting for Insane
Should be even less smearing now, a little higher PT quality than the last pull request and of course working automatic ReGIR DI fix/enable
That sounds great
I’d say it’s ready for alpha testing, just needs working ini detection and more tuning as we go and get more data and settings
I also need to figure out how I’ve CPU limited myself and solve that
So I can check true 4090 performance
alright
do we need inis at all?
does ReGIRDI still require loading a save?
hiya me again
it seems ray reconstruction is not getting re-enabled properly (sometimes)
it does looks even more perfect now
Are you Dutch?
(Sorry for asking so directly haha)
Nice, "for the rest" is something that doesn't tranlate literally to English that way haha. But is typically Dutch to say haha. You're actually saying now "voor de rust" 😛
Just found it funny and immediately recognized it haha
Don't worry, you are, everyone can make tiny little mistakes haha. I do it ever so often.
ah okay. So i assume you are also dutch?
Nee, hoe kom je daar in hemelsnaam bij? Zie ik dan eruit alsof ik een kaaskop ben? Huh! Huh?!
Dit topic is in essentie ook compleet off-topic, dus maakt niet uit als we effe intermezzo doen haha
Btw, just look at my username longer than a second and it should be obvious 😛
Ok, perhaps it could also be seen as German. But I don't steal bicycles, so....
My bicycles only get stolen by others 😭 😭 😭
Sad moment
Ah i see
Okay, funny that you immediately recognized that
Twee keer, ene keer deed ik niet op slot toen ik naar de McDonalds ging en de andere keer toen ik naar de appie ging haha
Dus wel beetje mijn fout, maar alsnog 😭
My brain was like "Oh god, that is wrong, but why does it sound so familiar though...." 😛
Ha
Het is alsnog vervelend, maakt dan niet uit waarom het gebeurt
Of moet ik typisch Nederlands gaan doen en gewoon weer de fiets van iemand anders gaan jatten haha
Das dan ook weer niet aardig
Huisgenoot van me heeft dat ooit gedaan 😂 Zou het zelf serieus nooit doen, want is natuurlijk hufterig
Das inderdaad hufterig, maar ja zo is dan ook weer een behoorlijk deel van Nederland
(als ik hiermee over een of andere lijn ging moet je het laten weten)
Jup, wel mee eens, maar is gewoon onze mening natuurlijk. Maar geloof wel dat iedereen van nature goed is, maar sommigen laten zich verleiden om slecht te doen uit gemak/luiheid/eigen ellende.
Ja, ik wil dat ook graag geloven
https://www.youtube.com/watch?v=5I139xFbNww Ik geloof haha
Boudewijn de Groot - Avond (1996)
Nu hoef je nooit je jas meer aan te trekken
en te hopen dat je licht het doet.
Laat buiten de stormwind nu maar razen in het donker
want binnen is het warm en licht en goed.
Hand in hand naar buiten kijken waar de regen valt.
Ik zie het vuur van hoop en twijfel in je ogen
en ik ken je diepste angst.
Want je k...
Question is can we guarantee all ini lines apply at runtime
ReGIR baseline should be loaded during load, it’s a world space grid that needs constructing and light should them be sampled from it, for shader reasons too I think such a drastic change should apply during load. But also loading without DI looked different than cycling it after load
Weird shit
In have also seen this. (that it looks different)
you are. I'm Australian and nobody can understand me
I hear you have great bread too
oke, Engels alsjeblieft domme lol
Yes, my baguette is huge
geen idee waar je het over hebt 😜
That's actually very good
bedankt schat ❤️
yep! they do. they're pulled in from commonfixes by onTweak
Wait what, you know dutch?
nee waarom?
Omdat je nederlands praat🤣
Ay nice mate
sorry
noice you too? 😂
Nice
Yeah born and raised
lol that’s fair people don’t make it easy
Then again I think I also speak too fast at times combined with Aussie dropping syllables everywhere
Was funny when I visited the Netherlands had to slow myself down
yeah and everyone calls me Sam, I HATE being called Sam lol
that's what my dad called me when I really fucked up 😂
lol yeah if you have a proper first name you kinda give that up living here
Whatever gets the sentence said faster can be dropped
yep. 🙄
In this case I think you should change how saving and loading works
Maybe remove all the detection on specific lines
Save like each category as an int
Mode =5, quality = 3
Into an ini file
Then just load from that ini
Easy enough
(in theory)
okay, or we just do
[ReGIR]
Editor/ReGIR/Enable = true
Editor/ReGIR/EnableForDI = true
RayTracing/Reference/BounceNumber = 2
etc. etc
or could do
[Mode/ReGIR/High]
Editor/ReGIR/Enable = true
Editor/ReGIR/EnableForDI = true
RayTracing/Reference/BounceNumber = 2
[Samples/ReGIR/Medium]
Editor/RTXDI/NumInitialSamples = 16
...
would be very easy to partse
easy to partse! not so easy to tyep though!
i actually quite like this. @real ravine wdyt?
An I mean more like not the ini common fixed
But more like how we load what mode the user selected
Make a little custom ini with
Mode = 3
yes that's what i'm talking about
there's no advantage to doing mode = 3 vs mode = "PTNext" etc. though
because in lua comparing any variable to something is slow
so
if mode = 3 then
-- do something
end
-- is much slower than
local PT21 = 3
if mode = PT21 then
-- do something
end
this is why the mode / quality / etc. checking is always done by comparing variables. in the first example lua creates a variable, does the comparison... in the second example all the vars already exist
Ah right sorry the structure I’m thinking is basically first replace all the guess samples functions with if mode 3 set our own internal var for mode 3 to whatever mode 3 is. We can store it as string as well either way.
Then the rest of the code is the same
Once we know what mode should be loaded in and set it to that (ReGIR) all our existing code for setting vars based on mode can than apply
yes. i'm just planning on removing all the guess things
ATM though we aren’t saving and loading selections players pick
Like if you pick ReGIR we don’t save that mode should === ReGIR
Which is all we really need to save
oh i was in my latest commit?
yep
Ah like after my pull request?
This one
ReLAX changes there are basically, prioritise spatial detection over a perfect stable resolve on stills. Detect down to the deepest level, trigger spatial variance sooner, count anything as disocclusion, changed the accumulated frames to what their auto detection would do at 30fps (to cover all scenarios), adjusted the roughness stopping to what I saw
All settings tested live in motion on the NRD sample
idk, just merging now
i guess my remaining question would be, does relax with naive need different settings from relax with ReGIR and/or ReSTIR
merged
I've also added a proposed configs.ini
actually we probably need a
[Mode/Common/Low]
...
maybe. or they might just make things confusing
There’s this
yes i know, which is amazing, but i just deleted guessing 🤔
okay, now i've actually checked in my config.ini proposal 😜
Hopefully not, but ReLAX is designed for ReSTIR (and by extension ReGIR). It’s tuned for the sort of signals it provides
I genuinely think we should try and move in a direction of ReSTIR for both GI and DI
Aka move away from PT 2.0
If you look at the predenoised image it’s a massive improvement enabling ReSTIR GI
If anything the Low quality modes can disable GI
i just don't think it's going to be fast enough. i can play at 40-45 fps with extremely noisy ReGIR or ReSTIR on my PC, or 50-60 fps with PT20 and no noise
if we can deal with the noise of low quality GI, then yes
I don’t get though how PT20 would have less noise, the predenoised image without GI has more noise
And weaker signals
¯_(ツ)_/¯
idk, but playing on Low samples Medium quality PT20 looks great
also keep in mind that at 1440p, DLSS balanced looks awful compared to quality
there isn't enough information at 835p primary resolution to really upscale properly
That’s quite fair
Balanced at 4K is like 1200p or something
1252p
Ideally I could get Quality 4K ReGIR
The dream
Yeah sacrificing GI for higher FPS and more resolution is a worthy trade off
Up to a point tho imo
Once your at 1080p I wouldn’t give it up to reach say 1200p
mm, the difference is more than it sounds because when FSR3 fps dips, it dips hard, it's nowhere near as stable as DLSS
yep 😭
one day i'll get a real PC 😂
i'm super curious to know what happens if you run it without texture/lod* mods
i mean if i can get ReGIR working really nicely on my PC, absolutely i'll use it. it looks amazing
i also haven't tried it on balanced and it already looks a lot sharper. balanced may be possible. or maybe @ 0.62 or something res
lmao reading others mods
local f = Helpers.GetFOV()
-- TODO: fuck you
local poopshit = (68 / f- 1) * 0.22
@hybrid violet this is my poem on preventing skipped temporal reprojection when camera isn't moving
registerForEvent('onUpdate', function(delta)
JitterCamera()
end)
function JitterCamera()
-- imperceptibly jitter camera to always force temporal reprojection
-- pseudocode follows
-- does just doing this work?
if isLoaded then
Game.GetPlayer()
return
end
-- or maybe this?
if isLoaded then
jitter = timer.fast * 0.0000000001
Game.GetPlayer():GetFPPCameraComponent():SetFOV(defaultFOV + jitter)
return
end
--[[
-- from ImmersiveFirstPerson\Modules\Helpers.lua
local player = Game.GetPlayer()
Game.GetPlayer():GetFPPCameraComponent():SetFOV(defaultFOV)
Game.GetPlayer():SetLocalPosition(Vector4.new(x, y, z, 1.0)) -- e.g. 0.0, 0.0, 0, 1.0 or 0.0, 0.0, 0.0, 1.0
Game.GetPlayer():SetLocalOrientation(Quaternion.new(x, y, z, 1.0))
if roll ~= nil or pitch ~= nil or yaw ~= nil then
if roll == nil then roll = 0 end
if pitch == nil then pitch = 0 end
if yaw == nil then yaw = 0 end
Game.GetPlayer():GetFPPCameraComponent():SetLocalOrientation(GetSingleton('EulerAngles'):ToQuat(EulerAngles.new(roll, pitch, yaw)))
]]
end
This looks incredibly interesting. I’m down for trying it out to see if it solves the static smear
I'm really really hoping we can just refresh the camera rather than jittering it
Are you using Google translate? haha
Not scared of them, just not my cup of tea 😋
no? 😂
Je was toch Australisch zei je?
Yeah, sorry, born that way haha
yes lol
we can still be friends 😊
but i'm a hugger
and nothing to apologise for
I get the feeling you don't get what I was trying to actually say hahahaha
Ah, a friend of mine from Moldova is a hugger too. Since then I became more of a fan of that too 😋
mayyyybeeee not? ... 😂
i'm pretty autistic 😂
Tsssssss, who isn't? 🤪
O M G, you always tilt clockwise??!
lekker zeg
Yeah, really annoying, now standing on my head actually
Dit frustreert mij haha, weet nu niet of je wel of niet Nederlands bent
Kan dreigen je eruit te kieperen als je niet de waarheid verteld? mwuhahahahaha
So, how do you talk Dutch?
I'm sending you a DM
okay haha
idk, i've been online 30 years... the internet today is just forks of yesterday
cpus today are too fast for this to be an issue, dont bother xd
@hybrid violet i've tweaked PTNext low/med/high/insane a bit ... i can't see any difference between 2 and 4 sharc bounces, can you? it just adds performance cost
https://github.com/sammilucia/cyberpunk-ultra-plus
i tried those commands to refresh the camera, they didn't seem to make any difference, but i'm not sure the problem actually exists in regir anyway
To my knowledge not really. Scripting languages like these can still cause slowdown in modern games. Alan Wake 2 devs switch to Lua for example for their scripting from now on on Northlight, but they admitted that it was extremely single-threaded and leaves room for optimization in the future.
They even had to work around issues apparently in cases where scripting was too slow to keep up.
well, it's done now ... i would prefer to program efficiently where possible
😊
also, PTNext actually looks great for me on DLSS Balanced
not as great as quality of course, but far far better than any of the other modes. i can run High on Balanced
and i couldn't find a way to activate it without loading a save
It’s honestly interesting how it just kinda seems better. To me it’s consistency
It kinda just works across more scenes
Holds up well, doesn’t boil much, doesn’t suddenly dissolve as much
And resolves some detail where you notice it more even if it does some spots you otherwise wouldn’t slightly less
It’s like sacrificing 5% peak for 33% base
it's soooo nice
i disabled SpatialNumSamples but it doesn't really matter, it's not using them at all
yes, and someone in the Digital Dreams discord was saying they hate how shadows don't resolve well at a distance (ReSTIR/naive/RTXDI) ... and it's like... well, they're screenspace... they never will
i've asked psi if there's some other way to script maybe a quicksave/quickload sequence ... or inject RedHotTools to do more or something
because the other trouble is, ,if you change any of the graphics settings, the regir grid gets trashed, and you have to reload
Yeah there’s a limit to which settings you can change, and you can’t reinit
mm 🤔
i was gonna argue but i wont bother. idk, trust the corporation if that's what you want xd
javascript is single threaded and it's not* slow
php is single threaded and it's not slow
python is not slow either
lua is not slow
I have no reason to doubt it honestly. Worked also as a tester for CorsixTH-project, where they also said Lua was very slow
@real ravine I'm confused, you are now argueing it anyways while saying you wouldn't argue it. I feel confused and betrayed now 😛
we have a full multithreaded JS engine we'll open source
i'd say more if i'd argue
uhuh 😛
If I can't win, I'll just ban his ass, mwuhahahaha
@hybrid violet is there a reason you stopped it loading settings on startup?
Btw, don't know the exact timestamp and at work, so can't listen to it now to be sure, but in this video they talked about the lua scripting: https://www.youtube.com/watch?v=ZTW7bDdHC6g
2023 was a brilliant year for advancements in video game graphics - and up there amongst the most astonishing achievements was Remedy's Alan Wake 2. In this extended interview with the Remedy tech team, Alex Battaglia gets the opportunity to ask the developers literally anything and everything he wants to know about - from mesh shaders vs primit...
Why no @gritty geode ? 🥺 Why are you restricting me so much in my life. I feel like this isn't working out. I'll just ban you instead.
Reality begs to differ
Youuuuu... little.... 😛
oh no, it's just not working reliably. i'll sort it
mooohahahah
what is lil bro yapping? he's not saying anything xd. even if the scripts they were running were slow, why would they run one at a time in a single threaded manner? bad code is bad code, no matter what language you'd be using you can still make mistakes that could cost you performance, time, braincells. the language aint saving you from bad decisions
44 fps in the afterlife at insane quality ... on a laptop 😂 1440p balanced FG
I did?
noticed a lot of weird behaviors on my end with cp's vanilla raytracing/pathtracing implementation, im pretty sure they've been paid by nvidia to make things run like ass overall so their gpus would come on top. not the first time either. they've done this in the past with excessive tessellation since they were faster at it than amd xdd
tested the last version of ultraplus and it looks and runs better - for the first time
no more weird shimmering, weird artifacts and whatever the game would cook up when i'd turn on raytraced reflections or path tracing
With ReGIR ? Or just like alpha 8 atm?
the latest version before your changes got merged
have no clue what got changed bcuz i didnt care since rt/pt looked like ass for me and i just didnt bother
but something got changed and it looks and performs better on an amd gpu
i'd be seeing fucking glitched squares when moving the camera on anything with a reflection on it
Always with the Nvidia conspiracy theories
NRD looks kind of incredible like this
As you can see some objects are so heavily tessellated but the amount of detail you NOTICE IN GAME is pretty much ZERO. Especially those alien-shields and the big chunks of stone and rubble. You barely see them up so close at ALL... So what is the reason for the heavy tessellation? The alien tentacles are tessellated but still they are EDGY on s...
If you want to talk about a GPU vendor paying developers to make games run/look worse then you have to talk about AMD, most of their sponsored games don't add DLSS or XeSS, and have gimped RT implementations
🤣
Versus your conspiracy nonsense about CDPR making PT run worse for what exactly?
Literal baseless accusation that is uncalled for, it's a new technology and CP was the first full game to get a PT makeover
cool story
No need to behave like a child
u understand that u just came out of fucking nowhere to just argue and defend whatever u're defending? even if u were right, why'd you downplay the fact that im saying "good job guys for making a better job than cp devs and nvidia with 0 fucking resources"
i mean whatever u're saying big guy
@hybrid violet jittering the FOV is working 😂
I responded to your conspiracy nonsense about developers being paid by Nvidia to make their games run worse, I said nothing more
Also random people and hobbyists fixing up/optimizing games is like half of modding. People with passion or an interest make up for resources and money that a company may have
Like some random guy who fixed GTA V's online loading times from minutes down to seconds by optimizing some code. One guy vs multi-billion dollar developer. Maybe Rockstar was paid off by SSD companies to make load times slower
be respectful please
oh sweet thats good, one major source of smearing gone
also, removing all my mods and my misc tweaks ini file thing that I had that let me use Astonishing, 30fps
on Quality
ReGIR Insane
it was all the Ultra options it added I think
cooked the graphics for no gain
well ... it's not happening quickly 🤔
okay, it's all updated. i called it beta01
is it on beta already?
oh you gained 30 fps?
yes it's seeming pretty reliable
still needs a lot of testing, but it's going well i think
nah went from 25 fps sitting still to 30-32 fps
y'all are quick
i just did
- rebalanced ReGIR quality a bit more
- set RTXDI disocclusion, envmap, spatialnumsamples all to 0 - they're not used and trying to save memory
- reduced ReGIR Low and Medium lights count to try and save memory ... i wonder if we can programatically reduce LOD distance to reduce lights?
(because on 8GB, my PC is fine, but slows down with the vram bug)
- added jittering the frame by an imperceptible amount to prevent temporal from pausing
yes i bet. but that's 4k right?
it still seems low
try the new beta?
trying it now
I would def just not go below 256 as a minimum
it will flicker badly when you least expect it
hmmm you sure on disocclusion?
thats the only one I'm super cautious about but, gotta test
lemme dl it
pretty sure... lmk what you think
i left it turned on for restirgi but i could be wrong, i'm pretty tired 😊
also i'm getting 22 real FPS at ReGIR High DLSS quality 1440p
After Valerii, I'm a bit more cautious, so sadly have to ask: these statements of yours are based on what experience? Not saying I don't believe you, just want to check 🙂
oops i accidentally removed ReSTIR spatial samples ... re-added
I want to emphasize that these are just your theories/opinions then of course.
AMD always stated developers were free to add other upscalers, so nobody is actually really certain about that too
Agree, counts for both @shadow heath and @real ravine Respect each other's opinions and views and present them as such
AMD actually never gave a clear answer denying that they discourage competitor tech to be implemented in their sponsored titles. But this seems to depend on the level of AMD's involvement/sponsoring of the game, since that can differ, nearly all their sponsored games either never got other upscalers added, or they were added at much later dates (which started happening after the public backlash compounded). You can read about the whole thing here: https://www.eurogamer.net/digitalfoundry-2023-df-weekly-does-the-amd-starfield-deal-block-the-inclusion-of-dlss-and-xess-upscaling
@hybrid violet i just pushed another few (minor fixes) and added you as a mod author
@real ravine do you have a nexus account?
ew blobby
those weeds became grey in any PT mode
yeah, why
yeah it looks like a whole layer of lighting isn't working
i don't know that's very weird
screen is too wide error 😂
dammit that's a local light sampling bug
or fallback light
😭
that's in all modes?
do you know why this tooltip isn't working?
if ImGui.RadioButton("RT Only", var.settings.mode == var.mode.RT_ONLY) then
ui.tooltip("Regular ray tracing, with optimisations and fixes.")
var.settings.mode = var.mode.RT_ONLY
config.SetMode(var.settings.mode)
config.SetQuality(var.settings.quality)
config.SetSamples(var.settings.samples)
SaveSettings()
end
nvmind i fixed it 😜
try enabling enable fallback lighting and / or enable local light importance sampling in debug
i hope it's not that
not that
https://www.youtube.com/watch?v=H0L3OTZ13Os theories, yeah
Nvidia's many offences against PC Gaming.
♥ Subscribe To AdoredTV - http://bit.ly/1J7020P
► Support AdoredTV through Patreon https://www.patreon.com/adoredtv ◄
Bitcoin Address - 1HuL9vN6Sgk4LqAS1AS6GexJoKNgoXFLEX
Ethereum Address - 0xB3535135b69EeE166fEc5021De725502911D9fd2
♥ Buy PC Parts from Amazon below.
♥ NEW USA Store! - https://www.a...
i've played around with all the debug settings, didn't find what was the cause of it
This is a controversial openly AMD-fanboy rumourmill channel who makes wrong claims all the time 🤣 he's a meme in the tech community
Are the testing versions on github or nexus?
just GitHub for now 😊
only because WoaD just found a bug. I was about to upload 😭
Alright I am open to helping test stuff later after I set the game and mods up
hiya, are ini's no longer needed? (i still have the one from firekahuna)
oh!! that's separate DI denoising
on the front panel, enable that
I think. I have to get to sleep, night everyone 😊 x
right you're in australia
they shouldn't be for beta02 I just pushed to GitHub 😊
it's 12:00 here
ah okay, thanks
mm, 5am here 😂
ty!
there's going to be bugs, we've all been zoomed in on certain things
I'll upload it to nexus soon with a big beta sign
I was going to add you to the mod page as an author, that's why 😊
don't have to 😊
nah, dont really care
Kay 😊 nn
nah im in Texas 😊
Have to say this could all be true, but also think DF made quite rash conclusions at the time all based on very indirect evidence. It all seems likely to be true, but doesn't make it true.
Per rule #2 in #📋welcome-rules-info I want to remind both @shadow heath and @real ravine to "treat everyone and their views with respect." and "This means no [...] presenting own questionable statements (including technical statements) as facts". If you want to continue this conversation in the correct manner, I would like to ask you to continue that in #💬chat
HMMM
might be onto something radical
not sure how I did it
but I went and just started unticking shit
and now shading count hits high quality much sooner
on vs off
and perf is up
off vs on 8 shade count
just trying to confirm what the change is that gained me frames
yeah idk but I can now run 32 fps base and 60fps after frame gen on 32 shading samples
Nvidia being a shitty company is one thing, but 5 years ago you would have needed a small render farm for none-real time path tracing.
It's so expensive that it was inefficient to use even for offline rendering like a decade ago.
If you go back to 2018 and told someone dealing with computer graphics for a living that in 2023 you will be able to run PT in real time on a single GPU, you would get laughed out of the room
I was not the one presenting (totally baseless) conspiracy theories as some plain fact. Why am I being berated for putting those into question? Like what someone here comes on talking about the flat Earth and you're supposed to say all opinions are equal 🤣
Also DF made no rash conclusions of any kind, they just went through the evidence, which is inconclusive but very obviously points towards a certain thing
Either way I have nothing more to say on the topic
There's also tons of people promoting another idea: Nvidia pays developers to make rasterized graphics works, so that RT looks better by comparison
At some point there were loads of people straight up saying that RT and ML hardware was fake
Then there was the people saying that the optical flow hardware on 40xx is not actually better and Nvidia's FG is just being artificially segmented
it never ends
What might be obvious to him might not be obvious for you and the other way around. So, just respect that. If you find something baseless, it is my job to handle that, which I did.
I distinctively remember Hardware Unboxed guy suggesting that 4A made raster GI worse in Metro Exodus because of Nvidia sponsorship
Needless to say, the channel has been on my ignored list ever since
As in he knew it was just speculation?
You entertain such an idea at all?
Games are developed primarily for console hardware and lowest common denominator
They are made as well as the developers can for that hardware
No, as in HUB knows that they are AMD fanboys favorites, and are throwing them red meat
Let's try to stick to facts and not fanboy-theories
People want to dishonestly mix certain Nvidia anti-consumer behaviors with stuff like this which is simply made up
And as pointed out earlier if someone wants to start this theme of GPU vendor paying off developers for X, then there's only evidence of AMD behaving that way
If CDPR hadn't ditched REDEngine I wager they'd probably have spent more time trying to optimize the PT implementation
But it was pretty much done as a tech demo
They just don't care that much about it. So it's great that modders are able to optimize and fix some things
Put a pin in this discussion, now. You lot didn't move the discussion as told by me, keep being off-topic here and keep bringing in opinions in as facts , so this is the only solution.
The discussion is obviously fruitless anyways, so....
is that just turning off ReGIRDI though? in which case it will use RTXDI (which isn't necessarily a bad thing)
@gaunt skiff @shadow heath can you please continue this argument somewhere else? trying to do development here 😂
Cyberpunk 2077 - Ultra Plus development
ReGIR still had its runtime cost
And visual impact
The two commands I think are most likely to have contributed when disabled are EnableFixed and ImportanceSampling
As they both had visible fps impacts not normally positive when enabled or disabled live
Meaning they do something for sure
Otherwise the big changes are disabling the absolute swath of RayTracing vars, enabling InitialTemporalCandidates and all that while also keeping both RIS vars on
Ah also disabling adaptive sampling
I think Enable Fixed might have interplay with Probabilistic as they’re in the same category
Maybe RIS and ImportanceSampling have interplay
ImportanceSampling vs ReGIR (naive path is IS?)
I don’t think it’s disabling all the ray tracing vars tbh (global shadow, diffuse; AO, etc)
Also turned off local light PDF var and debug ReSTIRGI duplicate var
Didn’t have time to break down all the changes just an experiment but it appears a productive one
And before I can confirm whether this performance change is pure positive or start breaking it down I should know if it actually cost anything visually
I don’t think we did but should confirm
Quality impact?
All interesting but I did definitively gain performance and could do 32 samples at the cost of 20
But 20 was doing more than 20 did
And 8 looked surprisingly usable
it won't work indoors though though, regir for DI is needed for LLs indoors
some small performance and bugfixes pushed
(tiny)
i think local lights batch size is only running one batch per frame, so if you lower the batch size, LLs just don't get drawn ... so basically batch size should be as big as RayTracing/LocalLight/Capacity
this could be why some people (i think without ultra fog) report smoke/steam flickering ... steam is a particle effect that uses a fake backlight 🤔
oh okay! that's different then
i have the feeling ReGIRGI+DI is using a different codepath and possibly some duplicated code (from the old RTXDI / ReSTIR code) is still running
i'll take a look at your changes in a sec 😊
black sorceress needs coffeee badly
I googled rendering for 2077 and there was this Local Light pass in the lighting and it was some weird low res buffer image
yes, naive (and everything) should be IS and/or RIS ... the question is whether IS gets accidentally/incidentally done twice
afaik the paths are either one of:
- IS > naive > denoisers (ReLAX + RTXDI in CP) ... OR
- IS > RIS > naive > denoisers
- IS > RIS > ReSTIR > denoisers (ReSTIRGI + RTXDI in CP)
- ReGIR > IS > RIS > ReSTIRGI+DI > denoisers
When I looked into ReGIRs code and RTXDI, it was basically
Uniform or RIS or ReGIR (with some inside uniform vs RIS at one spot inside ReGIR)
but because we're in untested code (and i don't consider CP's code to be properly tested anyway), it's reasonable to assume enabling one path doesn't necessarily disable [all of] another (including regular ray tracing)
the only way to know for sure is to run PIX and capture the frame timings for all of these modes
(and or reverse CP)
also something weird i just noticed .. shader executing reordering (SER) is a little slower for path traced (EnableReferenceSER) .... this is hardware level GPU queue optimisation, and i can't think of any reason it should be slower (other than if the pipeline is so short and regular, it costs more GPU to reorder it than to just do it)
so i've disabled it
so you disabled both of these and FPS improved?
Yeah all of that was disabled basically
or they are just taking up frame time on an entirely irrelevant code path
nice 😊
I found it boosted my FPS at least, are you 3000 or 4000?
Maybe that’s it
my guess is they added ReGIR and then released before they had time to work on it
RTXDI/rtxdi-sdk/include/rtxdi/InitialSamplingFunctions.hlsli at main · NVIDIAGameWorks/RTXDI · GitHub
my reasoning is, everything else rebuilds live ... if they'd had some time for release testing of ReGIR, they would have realised it doesn't (re)build the grid live and fixed it
so that means there are quite possibly other problems like other parts of code not being deactivated
This is true. It’s funny with the ReSTIR GI shaders you can see them give up on the other shaders live as they left them in debug mode
And only used Fused
Which in the code is implemented single shader
Vs the other multi pass multi shader means
Turn off fused and you get half half comparison on your screen
i don't think probabilistic or rays are doing anything for ReGIR
oddly, if i set reference/bouncennum to 1 or 3 it slows down
but 2 is fine ¯_(ツ)_/¯
I’m inclined to agree, I did my testing with 8 rays
Should murder my perf
Nothin
Turn off ReGIR and fps tanks
I think shading count may even be rays
no ... these generally aren't used at all for path tracing anyway ... only ForceAllShadows afaik
yup. rays are for naive only imo
Or samples per pixel
i think it's the equivalent, yeah ... i've been thinking of it as "rays per grid sector" 🤔 (rightly or rongly 😂)
Hmmmm is ImportanceSampling MIS (Multiple Importance Sampling) perhaps? I know they mentioned it being a final pass on the image
For quality
It’s something odd
But it’s damn effective like with the files above I was getting super usable results at 8
And 16 looked mostly converged
i agree btw 24 samples is about where things get really good. i think we should target 24 for insane
actually ... it's probably something like
buildnumber is the number of RIS areas per ReGIR grid sector
shadernumber is the number of rays per buildnumber per ReGIR
or something like that 🤔
we might find out on the weekend 
If I can recommend if you try the files when you get a chance, compare 1, 4, 8, 12, 16, 24 and 32
16 buuild?
huh okay
24 was an obvious improvement on cars in dark lighting
yep i will, downloading now
It also helps disocclusion restore itself faster
Like have a shadow from a pole and a car drive through it
4-8 take a bit to recover. I found 24 or 32 sorted itself out fairly fast
4-8 your relying on the denoiser to accumulate
24 or 32 I think have a strong enough signal for the denoiser to trigger its fast path and fill quickly
yep
agreed
oh! also
these bright lines at a distance are phi luminance
they only appear in disocclusion
also NRD is fairly broken with those phi settings ... that is why CDPR had them so low
We can go 1 1 I think, that’s settings I’ve seen in portal too
NRD can't deal with them
But 2 is basically like cleanliness
yup
yes. we can leave it, and switch them when we detect NRD / RR change easily enough
Works for me. Worth testing 1 vs 2 at some point
which i think is probably better than just nuking them
jup 😊
it's also possible CDPR applied some scaling factor ¯_(ツ)_/¯
Yeah it’s basically do we spatial test this material
For fast and history fix
I’m trying everything tested
Though it needs observation
Also, SSR fallback
Must be on I think
Vs appartment cooks itself without it dancing shit in reflections
Like fireflies or sampling issues ReGIR or no ReGIR
yes. it's used as a performance optimisation for rough reflections
idk if that's still true for ReGIR tho
i'm merging our code since you didn't 😭 lmao
you've only tested this with ReGIR?
Yeah
Sorry this is all cause it got late so I was just like fuck it what if
haha you're fine 😊
that's when the best things are discovered tbh
the other thing to remember is even if some unused function isn't taking up frame time, it may be allocating memory .. another reason to disable anything we're not certain is important
This is very true. Best way to test imo what helped is like put shading count to 3 and then test when its luminance drops entirely
Maybe 4. Ideally 4 should be usable image wise while before it tanked the overall luminance of the image
i've moved AdaptiveSampling to setmodes
is there a reason SetOption("RayTracing/Collector", "VisibilityCullingRadius", "2000.0") is increased to 2000 ?
Yeah I did a lot of testing
200 is the minimum, 100 and 50 was having issues with pop in of shadows in and out
2000 helped avoid some scenarios where far buildings shadows were appearing and disappearing
1500 might be doable but I went to 2000 for safety
But I wouldn’t drop below 200 offset which just decided the radius which BVH culling is ignored
Seems it’s too aggressive at 100
Yeah I hadn’t updated last night will when I’m home
I think so but can be reduced to 0.2
Less bias but def wouldn’t nuke it
I’ve enabled btw Global Light as it seemed to help perf but it seems to be some alternate implementation of sunlight
I found the radiance from it to be much closer to what you’d expect, the shadows much higher quality especially in the far distance
Any bugs from it are when the frustum is too low
Causes issues with pop in
Which implies a different tracing means
Maybe more directly integrated into PT?
Either way with that option a larger radius BVH makes sense
Also interestingly you get like moonlight with Global Light
okay i've moved that to setmode
VisibilityFrustumOffset or VisibilityCullingRadius?
yes, i believe it can also cause double shadows on some character mesh mods
what's the perf difference?
what are you using, 2000?
oooh nice
Very minor
Offset mainly
it's not a huge deal it's just every ms counts
I may have noticed this, surely we can fix that somewhere
i think it's a bug in the body mesh mods?
it happens with regir too?
oh so are you increasing VisibilityFrustumOffset to 1500?
Might be worth testing now again post mass disable
Oh not offset 200
okay 😊
Radius 2000
There’s some line about the first person model in reflections right
Or in ray tracing
mm i can't remember 🤔
okay, pushing merges
i've moved a lot of stuff to setmodes and setquality
okay beta03 is live 😊
also now the debug drawer only renders if config.DEBUG = true now (hopefully, i can't test rn 😊)
Nice, should prevent people breaking things
please trust me and pull, i'm not doing that again 😂
Will do for sure first thing 🙂
Approximate Target PDF is mentioned in that slides power point pres by CDPR
They were trying something to avoid a simpler means they ended up implementing
i see no difference but it's a bit faster
Oh nice
like 0.25 fps but every bit adds up
rule 1 of real time 3D - remove as much as possible as early as possible
Also emissive proxy light rejection found out what it is
In these markets somewhere in the city it turned off a light in front of an emissive mesh
It’s basically like don’t proxy the emissive light as an actual light
Just rely on the emissive
I think they were trying things with emissive triangle lights and removing some of the analytical lights used to boost them where appropriate
But ended up with their naive emissive and just kept the analytical light
It doesn’t work reliably and will cull some lights imo tho since we can’t do emissive triangle lights we should keep it off
Or maybe for low
ah okay, nice one
pushed an update to remove it all ... i also removed Guess...() .... which i swear i did earlier? it's got me worried now
Oh reference SER
Shader execution reordering
So prob yes may not be ideal for the 3000 series
But def for 4000 series should be on
it should work well on both tbh
i don't think there's enough shaders to reorder with PT
I’ll check again, but for me at least I gained like 6 frames with it on
24 fps to 30fps
@hybrid violet CyanideX is getting 140fps on insane at 1440p 😂
is that how much you get with a 4090 with the new changes?
yes
he didn't have samples at insane... now does, and now getting 120 fps
Crazy
yay!
looks really good, too