emoose / DLSSTweaks

Tweak DLL for NVIDIA DLSS, force DLAA on DLSS-supported titles, tweak scaling ratios & DLSS 3.1 presets, override DLSS versions without overwriting game files.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Streamline Wrapper, update too ?

Klemci opened this issue · comments

A question about the DLLs sl.xxx thata are in some games, it's the Streamline Wrapper DLLs...

... can/would/should those be updated too, ??

e.g:

FIST Forged in a Shadow Torch
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.common.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.dlss_g.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.interposer.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.reflex.dll
1.3.2.0

Bright Memory Infinite
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.common.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.dlss_g.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.interposer.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.reflex.dll
1.5.0.0

A Plague Tale Requiem
sl.common.dll
sl.dlss.dll
sl.dlss_g.dll
sl.interposer.dll
sl.reflex.dll
1.5.4.0

Alan Wake II
sl.common.dll
sl.dlss.dll
sl.dlss_d.dll
sl.dlss_g.dll
sl.interposer.dll
sl.reflex.dll
2,2,1,0

Brothers A Tale of Two Sons
Brothers\Plugins\NVIDIA\Streamline\Binaries\ThirdParty\Win64\sl.common.dll
Brothers\Plugins\NVIDIA\Streamline\Binaries\ThirdParty\Win64\sl.dlss_g.dll
Brothers\Plugins\NVIDIA\Streamline\Binaries\ThirdParty\Win64\sl.interposer.dll
Brothers\Plugins\NVIDIA\Streamline\Binaries\ThirdParty\Win64\sl.reflex.dll
2,2,1,0

Cyberpunk 2077
bin\x64\sl.common.dll
bin\x64\sl.dlss.dll
bin\x64\sl.dlss_d.dll
bin\x64\sl.dlss_g.dll
bin\x64\sl.interposer.dll
bin\x64\sl.nis.dll
bin\x64\sl.reflex.dll
2,2,1,0

Hellblade II
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.common.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.deepdvc.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.dlss_g.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.interposer.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.pcl.dll
Engine\Plugins\Runtime\Nvidia\Streamline\Binaries\ThirdParty\Win64\sl.reflex.dll
2,4,1,0

Seems a lot of games have issues after updating it, but sometimes it'll work fine, probably depends how far it's updating to, and maybe the SL plugins the game makes use of (eg. DD2 could be updated from 2.2.x to 2.4.0 fine for DLSS, but then enabling DLSSG with the mod would have issues...)

Taking a quick look at SL code it seems they did want to make sure structures have versions attached to them, so if a game was built for SL 2.2 SDK but you swapped in 2.4 DLLs, it should have been able to recognize the game is using older 2.2 structures and still be able to work.

Unfortunately doesn't seem they've really made use of that versioning much though, most structs are still tagged as "kStructVersion1" and a lot of structs aren't even using this versioning, eg:
image

So in that case a game built for pre-2.4.0 would be providing the older fields in red there, but 2.4.0 is only expecting that single green line, likely causing some issue with it (the struct on the green line is also smaller than the two red ones, could possibly cause a buffer overflow and crash...)

I'd guess it's probably fine to swap between the same major & minor, 2.4.0 -> 2.4.1 would probably be okay, but something like 2.3 -> 2.4 would probably have issues like above.

OKay... ;)

Look, he tells he did it from 2.1 to 2.4 and it fixed Jedi Survivor (written today):

https://www.techpowerup.com/forums/threads/dlss-3-5-files-to-add.322851/

I'll read it translated to my native lang to better understand.

EDIT, i'd like to download any version to have acces to last build of any version (e.g: 1.5.x...), do you know how i find all those old Streamline versions ?

Hellblade FG 3.7.1 DLL updated in last patch (same numbers in proprieties):

FG DLL 3.7.1 (v1) SHA1:
A7FA814B077BB5C43AD3F7B7E428FD2D7583F3D1

new SHA1 (v2):
D0F345B085CEBF039496B0EB4571E312B6F06DE8