Search Results (Searched for: frame generation)
- crosire
Today 17:32 - Today 17:44
6.1 was created by crosire
Changelog
6.1.0:
Features:
Bug fixes:
Miscellaneous:
Setup tool:
6.1.0:
Features:
- Added builtin add-on that synchronizes preset between effect runtime instances/windows (this is enabled in VR by default, so that changes in the desktop window are automatically synchronized to VR)
- Added Korean translation
- Added option to show current preset name in OSD window
- Added "create_pipeline_layout" add-on event
- Added "set_fullscreen_state" add-on event
- Added options to filter by custom width and height or format to generic depth add-on
- Added "shader" and "numthreads" function attributes in ReShade FX
[numthreads(32, 1, 1)] void MyCS1(...) { ... } void MyCS2(...) { ... } // The shader function attribute helps with validation, attempting to bind a function that was decorated with [shader("pixel")] to the "VertexShader" pass state would throw an error for example [shader("compute")] // vertex, pixel, compute void MyCS3(...) { ... } technique Test { // There are now two ways to declare the local thread group size (either via "numthreads" attribute, or in the pass state via brackets), which are functionally identical: pass { ComputeShader = MyCS1; } pass { ComputeShader = MyCS2<32, 1, 1>; } }
- Added anisotropic texture filtering (needs to be combined with e.g. "tex2Dgrad" or custom vertex shaders of course)
sampler MySampler { Texture = MyTexture; MinFilter = ANISOTROPIC; MagFilter = ANISOTROPIC; MipFilter = ANISOTROPIC; }
Bug fixes:
- Fixed HLSL/GLSL code generation for constant arrays duplicating the array data on every access
- Fixed GLSL layout qualifier image format for 32-bit unsigned integer textures
- Fixed crash when encountering division by zero in preprocessor expression
- Fixed crash in D3D12 due to attempt of unlocking mutex that was not locked before
- Fixed crash due to potential "AddRef" call on destroyed resource
- Fixed "End" key state updates
- Fixed code editor undo/redo/deletion selection
- Fixed repeated runtime reset if "IDXGISwapChain3::SetColorSpace1" is called every frame (e.g. in World of Warcraft)
- Fixed deadlock in "ID3D11DeviceContext::ClearDepthStencilView" with generic depth add-on
- Fixed Vulkan timestamp frequency calculation
- Fixed resource creation succeeding in Vulkan if initial data upload failed
- Fixed nullptr descriptor heap being set in D3D12 when "bind_descriptor_tables" is called with zero tables and there was no heap before
- Fixed D3D12 "clear_unordered_access_view_uint/float" with typeless resource
- Fixed "init_pipeline" add-on event not being called in D3D12 applications not using "ID3D12Device2" or higher
- Fixed independent blend value in D3D10/11/12 blend state creation
- Fixed D3D12 root descriptor handling
- Fixed pipeline creation failing in D3D10/11/12 when using certain dynamic states
- Fixed "create_pipeline"/"init_pipeline" add-on event being called with zero shaders in some cases
- Fixed resource creation failing in D3D12 when format was changed by an add-on and optimized clear value was passed in
Miscellaneous:
- Updated imgui to 1.90.4 (add-ons may now use 1.90.0-4, 1.89.7 or 1.86)
- Increased font size maximum to 64
- Added support for "ID3D12Device14" and "ID3D12GraphicsCommandList10"
- Added limit to number of effect loading threads in 32-bit, to reduce likelihood of out of memory situations
- Changed texture creation to clear render target textures using clear command instead of initial data to avoid big memory allocations
- Changed file selection dialog to not show hidden files and directories
- Changed preprocessor to not evaluate expressions or check syntax in disabled code
- Changed add-on API for descriptor types to split SRV/UAV in separate types for buffer/texture views
- Changed "effect_runtime::set_current_preset_path" to trigger add-on events
- Changed "effect_runtime::set_current_preset_path" to always reload preset when it is called in case the preset was modified on disk
Setup tool:
- Added dedicated back button
- Added effect installation for add-on packages
- Added add-on deletion to setup tool uninstallation
- Changed add-on page description to clarify potential compatibility issues of add-ons
- Fixed effect package/add-on download failing if there are many temporary files
- Fixed application list no longer being focused by default
- Fixed unhandled exception when target executable has invalid import directory entries
- Geldric
04 Mar 2024 20:54 - 04 Mar 2024 21:26
Replied by Geldric on topic Reshade message screen keeps appearing on some screens in STARFIELD
Starfield got a hotfix, I reinstalled v6.0.1 and the game locks up when launching... Oy vey
EDIT: After futzing around I got it reinstalled and even with NO shader's (empty preset) the problem persisted. So... to the game settings I went.
You can run FSR3 but the moment you turn on FRAME GENERATION is when Reshade.Me goes all wonky. So until some update to Reshade.Me, I'll leave frame gen off
EDIT: After futzing around I got it reinstalled and even with NO shader's (empty preset) the problem persisted. So... to the game settings I went.
You can run FSR3 but the moment you turn on FRAME GENERATION is when Reshade.Me goes all wonky. So until some update to Reshade.Me, I'll leave frame gen off
- NoPippinNo
18 Sep 2023 16:24 - 18 Sep 2023 17:06
Is depth buffer filtering possible? was created by NoPippinNo
Hello!
Is it possible for a user to narrow down depth map auto detection by providing a target format and/or resolution?
I'm having trouble getting the addon to settle on the correct buffer and I have a feeling an input filter would help massively.
Thank you for the excellent work!
[edit] It's an edge case, but here is some context if useful for other cases:
- Game: Starfield + free Streamline frame generation mod by LukeFZ564 on Nexus
- Auto detection intermittently misses targets when Frame Generation component is active (target is a D32S8 to be upscaled, auto detection reverts to a native resolution D24S8)
Is it possible for a user to narrow down depth map auto detection by providing a target format and/or resolution?
I'm having trouble getting the addon to settle on the correct buffer and I have a feeling an input filter would help massively.
Thank you for the excellent work!
[edit] It's an edge case, but here is some context if useful for other cases:
- Game: Starfield + free Streamline frame generation mod by LukeFZ564 on Nexus
- Auto detection intermittently misses targets when Frame Generation component is active (target is a D32S8 to be upscaled, auto detection reverts to a native resolution D24S8)
- Swampster
17 Sep 2023 01:17 - 17 Sep 2023 01:55
Reshade causing Starfield Crash To Desktop was created by Swampster
Hi folks,
I'm hoping somebody can nudge me in the right direction to fix a problem I seem to have when using Reshade with Starfield...
I'm pretty newly back into PC gaming after a 7/ 8 year hiatus with consoles, so apologies if I'm a bit dumb with some of this stuff...
OK, so basics...
I'm playing Starfield via the XBox app, cheapskate playing via GamePass
The game works perfectly fine without Reshade installed.
I'm trying to use: Quantum Reshade (currently ver: 1.65)
Which is basically a preset, and requires the installation of Reshade (currently using ver: 5.9.2_Addon)
I'm following the instructions provided by the preset author to the letter. however, when launching the game, it initially starts up... the launch windows opens with the title screen and jumps into full screen mode with the start menu. Clicking 'Continue' or choosing a save file to launch opens up the file with a loading screen and right at the point it would fire up the actual gameplay it crashes straight back to desktop.
Oddly, I did have the preset working a few days ago but it stopped working when Bethesda released a patch a day or two ago and I've not had it working since. I've uninstalled Reshade, reinstalled etc... to no success.
I do have a bunch of other mods installed, and again the game works fine with these mods and without Reshade. If any of these mods are causing a problem with Reshade, then I would imagine it's the first two in the list. Unfortunately, they're not something I'm willing to ditch... at least not until Bethesda is willing to integrate DLSS 3.5 properly.
But I have highlighted the 2 warnings... If that helps...
00:58:33:433 [13368] | INFO | Initializing crosire's ReShade version '5.9.2.1760' (64-bit) loaded from "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc\dxgi.dll" into "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc\Starfield.exe" (0xac2fd3b)
00:58:33:433 [13368] | INFO | Registering hooks for "user32.dll"
00:58:33:433 [13368] | INFO | > Libraries loaded.
00:58:33:433 [13368] | INFO | > Found 14 match(es). Installing ...
00:58:33:459 [13368] | INFO | Registering hooks for "C:\Windows\system32\dinput.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:460 [13368] | INFO | Registering hooks for "C:\Windows\system32\d2d1.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:460 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d9.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d10.dll"
00:58:33:461 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d10_1.dll"
00:58:33:461 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d11.dll"
00:58:33:462 [13368] | INFO | > Delayed.
00:58:33:462 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d12.dll"
00:58:33:462 [13368] | INFO | > Libraries loaded.
00:58:33:462 [13368] | INFO | > Found 8 match(es). Installing
00:58:33:487 [13368] | INFO | Registering hooks for "C:\Windows\system32\dxgi.dll"
00:58:33:487 [13368] | INFO | > Delayed until first call to an exported function.
00:58:33:487 [13368] | INFO | Registering hooks for "vrclient_x64.dll"
00:58:33:487 [13368] | INFO | > Delayed.
00:58:33:487 [13368] | INFO | Initialized.
00:58:33:685 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0, riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000FDFBAFF730)
00:58:33:685 [13368] | INFO | Installing export hooks for "C:\Windows\system32\dxgi.dll"
00:58:33:686 [13368] | INFO | > Found 5 match(es). Installing
00:58:33:757 [13368] | INFO | Redirecting CreateDXGIFactory1(riid = {7B7166EC-21C7-44AE-B21A-C9AE321AE369}, ppFactory = 000000FDFBAFE500)
00:58:34:810 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F05ADB2A0, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF710) ...
00:58:34:821 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFEBD0) ...
00:58:34:961 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:228 [13368] | INFO | Redirecting RegisterClassA(lpWndClass = 000000FDFBAFF6F0 { "Starfield", style = 0 })
00:58:38:228 [13368] | INFO | > Adding 'CS_OWNDC' window class style flag to "Starfield".
00:58:38:228 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0, riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 0000029F77E87F70) ...
00:58:38:231 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F08DA45C0, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:231 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:314 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:343 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F06C72C90, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:343 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:366 [13368] | WARN | D3D12CreateDevice failed with error code DXGI_ERROR_UNSUPPORTED.
00:58:38:366 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F06C72C90, MinimumFeatureLevel = 0xc100, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:367 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:410 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:430 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F08DA45C0, MinimumFeatureLevel = 0xc200, riid = {8B4F173B-2FEA-4B80-8F58-4307191AB95D}, ppDevice = 0000029F77E87F80)
00:58:38:430 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:39:000 [13368] | INFO | Redirecting CreateDXGIFactory1(riid = {7B7166EC-21C7-44AE-B21A-C9AE321AE369}, ppFactory = 000000FDFBAFD930)
00:58:39:613 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:39:631 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7EE8)
00:58:39:632 [13368] | INFO | > Dumping command queue description:
00:58:39:632 [13368] | INFO | =================================================
00:58:39:632 [13368] | INFO | | Parameter | Value |
00:58:39:632 [13368] | INFO | =================================================
00:58:39:632 [13368] | INFO | | Type | 0 |
00:58:39:632 [13368] | INFO | | Priority | 0 |
00:58:39:632 [13368] | INFO | | Flags | 0 |
00:58:39:632 [13368] | INFO | | NodeMask | 0 |
00:58:39:632 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7E88)
00:58:39:656 [13368] | INFO | > Dumping command queue description:
00:58:39:656 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | | Parameter | Value |
00:58:39:656 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | | Type | 2 |
00:58:39:656 [13368] | INFO | | Priority | 0 |
00:58:39:656 [13368] | INFO | | Flags | 0 |
00:58:39:657 [13368] | INFO | | NodeMask | 0 |
00:58:39:657 [13368] | INFO | =================================================
00:58:39:671 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7E28)
00:58:39:671 [13368] | INFO | > Dumping command queue description:
00:58:39:671 [13368] | INFO | =================================================
00:58:39:672 [13368] | INFO | | Parameter | Value |
00:58:39:672 [13368] | INFO | =================================================
00:58:39:672 [13368] | INFO | | Type | 3 |
00:58:39:672 [13368] | INFO | | Priority | 0 |
00:58:39:672 [13368] | INFO | | Flags | 0 |
00:58:39:672 [13368] | INFO | | NodeMask | 0 |
00:58:39:672 [13368] | INFO | =================================================
00:58:41:102 [27000] | INFO | Redirecting IDXGIFactory2::CreateSwapChainForHwnd(this = 0000029F08DF8940, pDevice = 000002AB82EFE9E0, hWnd = 00000000006708D6, pDesc = 0000029F08E29588, pFullscreenDesc = 0000029F08E295B8, pRestrictToOutput = 0000000000000000, ppSwapChain = 000000FDFE6FE520)
00:58:41:102 [27000] | INFO | > Dumping swap chain description:
00:58:41:102 [27000] | INFO | =================================================
00:58:41:102 [27000] | INFO | | Parameter | Value |
00:58:41:102 [27000] | INFO | =================================================
00:58:41:102 [27000] | INFO | | Width | 3840 |
00:58:41:102 [27000] | INFO | | Height | 2160 |
00:58:41:102 [27000] | INFO | | RefreshRate | 0 0 |
00:58:41:102 [27000] | INFO | | Format | DXGI_FORMAT_B8G8R8A8_UNORM |
00:58:41:103 [27000] | INFO | | Stereo | FALSE |
00:58:41:103 [27000] | INFO | | ScanlineOrdering | 0 |
00:58:41:103 [27000] | INFO | | Scaling | 0 |
00:58:41:103 [27000] | INFO | | SampleCount | 1 |
00:58:41:103 [27000] | INFO | | SampleQuality | 0 |
00:58:41:103 [27000] | INFO | | BufferUsage | 0x20 |
00:58:41:103 [27000] | INFO | | BufferCount | 2 |
00:58:41:103 [27000] | INFO | | Windowed | TRUE |
00:58:41:103 [27000] | INFO | | SwapEffect | 4 |
00:58:41:103 [27000] | INFO | | AlphaMode | 0 |
00:58:41:103 [27000] | INFO | | Flags | 0x840 |
00:58:41:103 [27000] | INFO | =================================================
00:58:41:116 [27000] | WARN | Skipping swap chain because it was created without a proxy Direct3D device.
00:59:14:321 [08340] | INFO | Registered add-on "Upscaling Fix for Starfield" v1.1.0.0 using ReShade API version 4.
*** Apologies, I've tried again and and again to try and stop the forum mangling the formatting....
So if anybody has any ideas? I'm all ears...
Cheers...
I'm hoping somebody can nudge me in the right direction to fix a problem I seem to have when using Reshade with Starfield...
I'm pretty newly back into PC gaming after a 7/ 8 year hiatus with consoles, so apologies if I'm a bit dumb with some of this stuff...
OK, so basics...
I'm playing Starfield via the XBox app, cheapskate playing via GamePass
The game works perfectly fine without Reshade installed.
I'm trying to use: Quantum Reshade (currently ver: 1.65)
Which is basically a preset, and requires the installation of Reshade (currently using ver: 5.9.2_Addon)
I'm following the instructions provided by the preset author to the letter. however, when launching the game, it initially starts up... the launch windows opens with the title screen and jumps into full screen mode with the start menu. Clicking 'Continue' or choosing a save file to launch opens up the file with a loading screen and right at the point it would fire up the actual gameplay it crashes straight back to desktop.
Oddly, I did have the preset working a few days ago but it stopped working when Bethesda released a patch a day or two ago and I've not had it working since. I've uninstalled Reshade, reinstalled etc... to no success.
I do have a bunch of other mods installed, and again the game works fine with these mods and without Reshade. If any of these mods are causing a problem with Reshade, then I would imagine it's the first two in the list. Unfortunately, they're not something I'm willing to ditch... at least not until Bethesda is willing to integrate DLSS 3.5 properly.
- Starfield Frame Generation - Replacing FSR with DLSS-G
- Upscaling Fix
- Achievement Enabler
- 60 FPS - Smooth UI
- Enhanced Dialogue Interface
- Enhanced Player Healthbar
- Enhanced Subtitles
- EXE
- Improved_Transit_signs
- MissonMenuQOL
- Scanner Encumbrance Display With Time
- StarUI Inventory
- Undelayed Launching
But I have highlighted the 2 warnings... If that helps...
Warning: Spoiler!
00:58:33:433 [13368] | INFO | Initializing crosire's ReShade version '5.9.2.1760' (64-bit) loaded from "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc\dxgi.dll" into "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc\Starfield.exe" (0xac2fd3b)
00:58:33:433 [13368] | INFO | Registering hooks for "user32.dll"
00:58:33:433 [13368] | INFO | > Libraries loaded.
00:58:33:433 [13368] | INFO | > Found 14 match(es). Installing ...
00:58:33:459 [13368] | INFO | Registering hooks for "C:\Windows\system32\dinput.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:460 [13368] | INFO | Registering hooks for "C:\Windows\system32\d2d1.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:460 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d9.dll"
00:58:33:460 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d10.dll"
00:58:33:461 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d10_1.dll"
00:58:33:461 [13368] | INFO | > Delayed.
00:58:33:461 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d11.dll"
00:58:33:462 [13368] | INFO | > Delayed.
00:58:33:462 [13368] | INFO | Registering hooks for "C:\Windows\system32\d3d12.dll"
00:58:33:462 [13368] | INFO | > Libraries loaded.
00:58:33:462 [13368] | INFO | > Found 8 match(es). Installing
00:58:33:487 [13368] | INFO | Registering hooks for "C:\Windows\system32\dxgi.dll"
00:58:33:487 [13368] | INFO | > Delayed until first call to an exported function.
00:58:33:487 [13368] | INFO | Registering hooks for "vrclient_x64.dll"
00:58:33:487 [13368] | INFO | > Delayed.
00:58:33:487 [13368] | INFO | Initialized.
00:58:33:685 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0, riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000FDFBAFF730)
00:58:33:685 [13368] | INFO | Installing export hooks for "C:\Windows\system32\dxgi.dll"
00:58:33:686 [13368] | INFO | > Found 5 match(es). Installing
00:58:33:757 [13368] | INFO | Redirecting CreateDXGIFactory1(riid = {7B7166EC-21C7-44AE-B21A-C9AE321AE369}, ppFactory = 000000FDFBAFE500)
00:58:34:810 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F05ADB2A0, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF710) ...
00:58:34:821 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFEBD0) ...
00:58:34:961 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:228 [13368] | INFO | Redirecting RegisterClassA(lpWndClass = 000000FDFBAFF6F0 { "Starfield", style = 0 })
00:58:38:228 [13368] | INFO | > Adding 'CS_OWNDC' window class style flag to "Starfield".
00:58:38:228 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0, riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 0000029F77E87F70) ...
00:58:38:231 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F08DA45C0, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:231 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:314 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:343 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F06C72C90, MinimumFeatureLevel = 0xc200, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:343 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:366 [13368] | WARN | D3D12CreateDevice failed with error code DXGI_ERROR_UNSUPPORTED.
00:58:38:366 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F06C72C90, MinimumFeatureLevel = 0xc100, riid = {189819F1-1DB6-4B57-BE54-1821339B85F7}, ppDevice = 000000FDFBAFF370)
00:58:38:367 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:38:410 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:38:430 [13368] | INFO | Redirecting D3D12CreateDevice(pAdapter = 0000029F08DA45C0, MinimumFeatureLevel = 0xc200, riid = {8B4F173B-2FEA-4B80-8F58-4307191AB95D}, ppDevice = 0000029F77E87F80)
00:58:38:430 [13368] | INFO | Redirecting CreateDXGIFactory2(Flags = 0x80000000, riid = {1BC6EA02-EF36-464F-BF0C-21CA39E5168A}, ppFactory = 000000FDFBAFE2B0) ...
00:58:39:000 [13368] | INFO | Redirecting CreateDXGIFactory1(riid = {7B7166EC-21C7-44AE-B21A-C9AE321AE369}, ppFactory = 000000FDFBAFD930)
00:58:39:613 [13368] | INFO | Searching for add-ons (*.addon, *.addon64) in "C:\Program Files\WindowsApps\BethesdaSoftworks.ProjectGold_1.7.29.0_x64__3275kfvn8vcwc" ...
00:58:39:631 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7EE8)
00:58:39:632 [13368] | INFO | > Dumping command queue description:
00:58:39:632 [13368] | INFO | =================================================
00:58:39:632 [13368] | INFO | | Parameter | Value |
00:58:39:632 [13368] | INFO | =================================================
00:58:39:632 [13368] | INFO | | Type | 0 |
00:58:39:632 [13368] | INFO | | Priority | 0 |
00:58:39:632 [13368] | INFO | | Flags | 0 |
00:58:39:632 [13368] | INFO | | NodeMask | 0 |
00:58:39:632 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7E88)
00:58:39:656 [13368] | INFO | > Dumping command queue description:
00:58:39:656 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | | Parameter | Value |
00:58:39:656 [13368] | INFO | =================================================
00:58:39:656 [13368] | INFO | | Type | 2 |
00:58:39:656 [13368] | INFO | | Priority | 0 |
00:58:39:656 [13368] | INFO | | Flags | 0 |
00:58:39:657 [13368] | INFO | | NodeMask | 0 |
00:58:39:657 [13368] | INFO | =================================================
00:58:39:671 [13368] | INFO | Redirecting ID3D12Device::CreateCommandQueue(this = 0000029F09296CF0, pDesc = 000000FDFBAFF420, riid = {0EC870A6-5D7E-4C22-8CFC-5BAAE07616ED}, ppCommandQueue = 000002A7782E7E28)
00:58:39:671 [13368] | INFO | > Dumping command queue description:
00:58:39:671 [13368] | INFO | =================================================
00:58:39:672 [13368] | INFO | | Parameter | Value |
00:58:39:672 [13368] | INFO | =================================================
00:58:39:672 [13368] | INFO | | Type | 3 |
00:58:39:672 [13368] | INFO | | Priority | 0 |
00:58:39:672 [13368] | INFO | | Flags | 0 |
00:58:39:672 [13368] | INFO | | NodeMask | 0 |
00:58:39:672 [13368] | INFO | =================================================
00:58:41:102 [27000] | INFO | Redirecting IDXGIFactory2::CreateSwapChainForHwnd(this = 0000029F08DF8940, pDevice = 000002AB82EFE9E0, hWnd = 00000000006708D6, pDesc = 0000029F08E29588, pFullscreenDesc = 0000029F08E295B8, pRestrictToOutput = 0000000000000000, ppSwapChain = 000000FDFE6FE520)
00:58:41:102 [27000] | INFO | > Dumping swap chain description:
00:58:41:102 [27000] | INFO | =================================================
00:58:41:102 [27000] | INFO | | Parameter | Value |
00:58:41:102 [27000] | INFO | =================================================
00:58:41:102 [27000] | INFO | | Width | 3840 |
00:58:41:102 [27000] | INFO | | Height | 2160 |
00:58:41:102 [27000] | INFO | | RefreshRate | 0 0 |
00:58:41:102 [27000] | INFO | | Format | DXGI_FORMAT_B8G8R8A8_UNORM |
00:58:41:103 [27000] | INFO | | Stereo | FALSE |
00:58:41:103 [27000] | INFO | | ScanlineOrdering | 0 |
00:58:41:103 [27000] | INFO | | Scaling | 0 |
00:58:41:103 [27000] | INFO | | SampleCount | 1 |
00:58:41:103 [27000] | INFO | | SampleQuality | 0 |
00:58:41:103 [27000] | INFO | | BufferUsage | 0x20 |
00:58:41:103 [27000] | INFO | | BufferCount | 2 |
00:58:41:103 [27000] | INFO | | Windowed | TRUE |
00:58:41:103 [27000] | INFO | | SwapEffect | 4 |
00:58:41:103 [27000] | INFO | | AlphaMode | 0 |
00:58:41:103 [27000] | INFO | | Flags | 0x840 |
00:58:41:103 [27000] | INFO | =================================================
00:58:41:116 [27000] | WARN | Skipping swap chain because it was created without a proxy Direct3D device.
00:59:14:321 [08340] | INFO | Registered add-on "Upscaling Fix for Starfield" v1.1.0.0 using ReShade API version 4.
*** Apologies, I've tried again and and again to try and stop the forum mangling the formatting....
So if anybody has any ideas? I'm all ears...
Cheers...
- crosire
23 Jul 2023 00:45 - 25 Aug 2023 16:26
5.9 was created by crosire
Changelog
5.9.0:
Features:
Bug fixes:
Miscellaneous:
Setup tool:
5.9.1:
5.9.2:
5.9.0:
Features:
- Added ReShade FX support for 1D and 3D textures
texture3D My3DTex < source = "MyVolume.dds"; > { Width = 128; Height = 128; Depth = 8; MipLevels = 1; }; sampler3D My3DSampler { Texture = My3DTex; }; storage3D My3DStorage { Texture = My3DTex; MipLevel = 0; }; void MyPixelShaderEntryPoint() { float4 col = tex3D(My3DStorage, float3(0.5, 0.5, 0.5)); ... } void MyComputeShaderEntryPoint() { tex3Dstore(My3DStorage, uint3(0, 0, 0), float4(1, 0, 0, 1)); }
- Added support for loading 3D DDS images into 3D textures
- Added ReShade FX support for texture atomics and integer texture formats
texture2D<int> MyIntTex { // New component type specification, int for R32I, uint for R32U, float4 (which is the default) for the rest Width = 128; Height = 128; Format = R32I; // New integer formats: R32I and R32U }; storage2D<int> MyIntStorage { Texture = MyIntTex; }; void MyComputeShaderEntryPoint(uint3 id : SV_DispatchThreadID) { atomicAdd(MyIntStorage, id.xy, 1); }
- Added "ui_units" annotation to add units description to slider or drag widgets
- Added undo button next to modified values in uniform variable editor
- Added optional preset transition message (overlay that shows the name of the preset when switching presets using hotkeys or similar)
- Added environment variable to disable logging (RESHADE_DISABLE_LOGGING)
- Added environment variable to disable input hooks (RESHADE_DISABLE_INPUT_HOOK)
- Added environment variable to disable graphics hooks (RESHADE_DISABLE_GRAPHICS_HOOK)
- Added config option to disable ReShade entirely on a specific effect runtime instance
[GENERAL] Disable=1
- Added HDR support for ReShade overlay
Bug fixes:
- Fixed occasional crash in Cyberpunk 2077, The Last of Us, ... with Generic Depth add-on active
- Fixed content not showing up in applications using Chromium (like Venice Unleashed)
- Fixed potentially duplicated hooks in Vulkan for swapchain creation
- Fixed splash bar not disappearing with "NoReloadOnInit" active
- Fixed imgui navigation window getting stuck on screen when moving mouse while it is visible
- Fixed warning about missing effect files showing even when effects were not yet loaded
- Fixed "Edit global preprocessor definitions" popup window not being scrollable with the mouse
- Fixed techniques on statistics page not being sorted by execution order
- Fixed relative paths in the file dialog widget not always being relative to the configured base path
- Fixed code editor search window focusing
- Fixed "reshade_reloaded_effects" event not being called during reload of an individual effect
- Fixed effects reloading constantly when using an add-on that changes the back buffer color bit depth an odd number of times a frame
- Fixed internal calls to "D3D12SerializeRootSignature" crashing when graphics hooks are disabled
- Fixed D3D12 resource state transition barriers for mipmap generation
- Fixed broken query results in D3D12 when query has not finished executing on the GPU when queried
- Fixed multiple different pooled textures in an effect being shared with the same pooled texture in a different effect
- Fixed effect filter and preview texture being reset even when just a single effect is reloaded
Miscellaneous:
- Updated imgui to 1.89.7 (add-ons may now use both 1.89.7 and the previous 1.86)
- Added swap chain size check and avoid initializing on very small ones (The Sims 4 e.g. creates a 16x16 swapchain in borderless window mode that is better off skipped)
- Added support for relative font paths
- Added protection against key repeats triggering keybinds
- Added warning message when add-ons were not loaded due to the build only having limited add-on functionality
- Added log message for "IDXGISwapChain3::SetColorSpace1" calls
- Added full application command-line to initial log message
- Added "bind_pipeline" event for D3D9 "SetFVF" command
- Added "create_sampler" event for D3D12 static samplers and also include them in pipeline layout parameters
- Added separate front and back stencil masks and reference values
- Added support for push constant offset in D3D10 and D3D11
- Added device loss handling for D3D9
- Changed addressing mode for texture previews to clamping instead of wrapping
- Changed "Edit global preprocessor definitions" popup window to scale with font size
- Changed context menus to scale with font size
- Changed file widgets to do case-insensitive comparison on file extensions
- Changed technique timing list on statistics page to pad with new lines when name is long and would otherwise overlap timing values
- Changed several settings to always clamp values (like alpha, rounding and text size, to prevent users accidentally entering a value that would break the overlay)
- Changed effect loading to force preprocessing of an effect instead of loading from cache if it failed to parse (to avoid a broken cache preventing the effect from loading)
- Changed tutorial to only show up on the very first effect runtime
- Changed config file naming to only switch to ReShadeX.ini if copying default configuration from ReShade.ini was successfull (to avoid errors during saving when file permissions were not set up)
- Changed update check to only run once per session
- Changed HLSL implementation of ReShade FX "sincos" intrinsic to actually use "sincos"
- Changed missing image file warning to an error
- Changed function signature of "ReShadeGetBasePath" export
- Renamed several ReShade API types and methods (without breaking binary compatibility)
- Reduced overhead of "bind_descriptor_tables" event in D3D12
- Removed pipeline tracking in D3D12 (it is up to add-ons to track and restore state)
- Removed effect compile warnings from technique tooltips
- Removed clamping of "ui_step" value
Setup tool:
- Added effect files list to effect package tooltips
- Added workaround instructions to setup error message box when list of effect packages failed to download
- Fixed potential setup tool crash during app search when directory enumeration throws exception
- Removed orange coloring of setup tool for builds with full add-on support
5.9.1:
- Fixed random crashes in D3D10/D3D11 games
- Fixed crash when using some older add-ons that made use of ImGuiListClipper
- Fixed recursive texture search not working properly when search path is relative and working directory is not equal to the base path
- Fixed HLSL shader model 3 code generation for custom semantics
- Fixed GLSL/SPIR-V semantic to location translation for variables with individual indexed semantics
- Fixed missing cast in GLSL code generation for boolean varying variables
- Fixed "No keyboard and mouse input available" message not going away when tutorial was not completed (which can't be completed without keyboard or mouse input ...)
- Fixed potential crash in Baldur's Gate 3
- Added single component floating-point sampler and storage types
5.9.2:
- Added missing hooks for "vkQueueSubmit2KHR" and "vkCmdWriteTimestamp2KHR"
- Added application ID to first message written to log
- Changed message window to use same style as the rest of the overlay
- Fixed depth buffer detection in Baldur's Gate 3 with Vulkan
- Fixed depth buffer leak when selection switches to a different one
- Fixed framerate plot on Statistics page showing broken data
- Fixed HLSL shader model 3 code generation when mixing custom semantics and "TEXCOORD"
- Fixed incorrect render target and storage access flags set on pooled textures
- Fixed current imgui context being reset when a new effect runtime is created from an add-on event triggered by an existing runtime
- Fixed setup tool crash when unselecting an effect file that is not installed anyway
- mr_spongeworthy
16 Apr 2023 18:42 - 16 Apr 2023 20:47
Replied by mr_spongeworthy on topic 3D Depth Map Based Stereoscopic Shader
Today I played with pretty much every permutation I could think of to get DLSS Frame Generation working reliably with SuperDepth3D in Cyberpunk. I played with a variety of Vsync modes (forced through NVIDIA CP), limiting FPS manually (through NVIDIA CP) and limiting FPS internally in Cyberpunk settings.
In some configurations it is very close to working, but I was unable to achieve 100% usability as there are occasional flickers and glitches. I found that the single best solution is limiting the FPS in-game to 50% of your display's refresh. Since DLSS Frame Gen disables vsync without manually capping the fps in some way you will immediately exceed your display's refresh (in my case I've been testing on an old 60hz Playstation 3D display with shutter glasses in above/below mode). With those settings, I can get Cyberpunk into a state where it appears to be generating every other frame reliably, and peaking at 60fps including generated frames. However, there are occasional glitches. I've tested to be sure I'm exceeding 30fps by reasonable amounts in all scenes with Frame Gen off. 4090 @2560x1440 DLAA & RT Path Tracing enabled I'm hitting 35-45 fps (but stuttering of course due to sub-refresh rate rendering). With Frame Gen on at 30 rendered frames + 30 generated frames things are a bit softer but the experience is generally smooth. If you guys can figure out how to resolve the remaining glitches, which look to be out-of-sync stereo frames (that's a guess), you'll have a solution that will allow stereoscopic rendering of modern titles at extremely high quality settings.
EDIT: It's possible the glitches might be occurring when SuperDepth is detecting something onscreen and attempting to auto-adjust certain depth settings. I've noticed that initiating a phone-call will reliably cause it to happen. Or possibly the GPU overhead for Frame Gen is much higher than I would have anticipated and the slight increase in GPU usage caused by the phone overlay is at the root of the problem. I'll have to try it in Witcher 3 Next Gen and Hogwarts Legacy also, as knowing Cyberpunk this could easily be "a cyberpunk thing."
In some configurations it is very close to working, but I was unable to achieve 100% usability as there are occasional flickers and glitches. I found that the single best solution is limiting the FPS in-game to 50% of your display's refresh. Since DLSS Frame Gen disables vsync without manually capping the fps in some way you will immediately exceed your display's refresh (in my case I've been testing on an old 60hz Playstation 3D display with shutter glasses in above/below mode). With those settings, I can get Cyberpunk into a state where it appears to be generating every other frame reliably, and peaking at 60fps including generated frames. However, there are occasional glitches. I've tested to be sure I'm exceeding 30fps by reasonable amounts in all scenes with Frame Gen off. 4090 @2560x1440 DLAA & RT Path Tracing enabled I'm hitting 35-45 fps (but stuttering of course due to sub-refresh rate rendering). With Frame Gen on at 30 rendered frames + 30 generated frames things are a bit softer but the experience is generally smooth. If you guys can figure out how to resolve the remaining glitches, which look to be out-of-sync stereo frames (that's a guess), you'll have a solution that will allow stereoscopic rendering of modern titles at extremely high quality settings.
EDIT: It's possible the glitches might be occurring when SuperDepth is detecting something onscreen and attempting to auto-adjust certain depth settings. I've noticed that initiating a phone-call will reliably cause it to happen. Or possibly the GPU overhead for Frame Gen is much higher than I would have anticipated and the slight increase in GPU usage caused by the phone overlay is at the root of the problem. I'll have to try it in Witcher 3 Next Gen and Hogwarts Legacy also, as knowing Cyberpunk this could easily be "a cyberpunk thing."
- ChrisG683
16 Jan 2023 04:18
Replied by ChrisG683 on topic 5.6
Hopefully this fixes the crash when switching between PSO2 NGS and classic lobbies that's been around since launch, thank you for all of the hard work!
Also when it says DLSS 3 crash, is that referring to the frame generation feature? I noticed I had to uninstall ReShade on The Witcher 3 with Frame Generation enabled.
Also when it says DLSS 3 crash, is that referring to the frame generation feature? I noticed I had to uninstall ReShade on The Witcher 3 with Frame Generation enabled.
- DragonfireXZ95
21 Dec 2022 22:16
Replied by DragonfireXZ95 on topic The Witcher 3 Next Gen (DLSS 3 Frame Interpolation Crash)
Having the same problem as well. Would love to use both, but disabled frame generation for now until it's fixed.
- Knochey
15 Dec 2022 22:47
The Witcher 3 Next Gen (DLSS 3 Frame Interpolation Crash) was created by Knochey
Hi! I've been using Reshade for some time now on TW3 and it seems like there are crashes/freezes when it's used alongside DLSS3 Frame Generation. After some time the game just refuses to render and freezes completely. To be honest it seems like DLSS3 has some hooks into the runtime as well. I don't know if it's fixable but I would appreciate it a lot if you could look into it. Thanks a lot!
- TootY
28 Nov 2022 22:06
Microsoft Flight Simulator "Freeze" Reshade was created by TootY
Hello,
So this is rather random and I'm hoping someone could help. I installed Microsoft Flight Simulator onto my new rig along with Reshade 5.5.1 (also tested with an older version 5.4.0) - with Reshade installed it introduces something strange.
The game doesn't freeze so to speak nor does it crash to the desktop. It's unresponsive but in task manager shows it's running as normal and not the normal "not responding". Furthermore, the screen isn't frozen or unresponsive.
Once I remove Reshade via the installer the issue isn't present and I can repeat this consistently.
I'm using MSFS in DX12 with an RTX 4090 and DLSS Frame Generation On. No profiles installed for Reshade, all default.
Log attached along with screenshots via link - easyupload.io/6yzlzp
If the link doesn't work for whatever reason please let me.
Thank you in advance,
Ash
So this is rather random and I'm hoping someone could help. I installed Microsoft Flight Simulator onto my new rig along with Reshade 5.5.1 (also tested with an older version 5.4.0) - with Reshade installed it introduces something strange.
The game doesn't freeze so to speak nor does it crash to the desktop. It's unresponsive but in task manager shows it's running as normal and not the normal "not responding". Furthermore, the screen isn't frozen or unresponsive.
Once I remove Reshade via the installer the issue isn't present and I can repeat this consistently.
I'm using MSFS in DX12 with an RTX 4090 and DLSS Frame Generation On. No profiles installed for Reshade, all default.
Log attached along with screenshots via link - easyupload.io/6yzlzp
If the link doesn't work for whatever reason please let me.
Thank you in advance,
Ash
- crosire
19 Nov 2022 13:58 - 12 Dec 2022 22:50
5.5 was created by crosire
Changelog
5.5.0:
Features:
Bug fixes:
Miscellaneous:
5.5.1:
5.5.2:
5.5.0:
Features:
- Added support for navigating the overlay using a XBox controller (to open/close press left + right shoulder buttons and the start button simultaneously)
This is only active when "[INPUT] GamepadNavigation=1" is set in ReShade.ini!
Controls are as follows: www.dearimgui.org/controls_sheets/imgui%...%20v6%20-%20Xbox.png
Bug fixes:
- Fixed hooking in Evoland and other D3D10/11 games on Windows 7
- Fixed crash with DXVK 2.0 (or other Vulkan games using the "VK_EXT_graphics_pipeline_library" extension)
- Fixed crash on startup in Toontown Rewritten
- Fixed tree and cloud rendering artifacts in Minecraft
- Fixed bad performance while the "Add-ons" window in the overlay is visible
- Fixed ReShade rendering applied multiple times to the same frame in games using "D3DPRESENT_DONOTWAIT" or "DXGI_PRESENT_DO_NOT_WAIT" present flag
- Fixed modifying resource description in "create_resource" event having no effect in D3D10/11
- Fixed "swapchain::get_current_back_buffer_index()" result being out of date in "present" event in D3D12/Vulkan
- Fixed "command_list::copy_texture_region" not always performing blitting in Vulkan when texture dimensions do not match
- Fixed "effect_runtime::get_texture_binding" not working for textures with a semantic
- Fixed crash in Vulkan when destroying shared resource
- Fixed crash when binding nullptr constant buffer in D3D11
- Fixed nullptr descriptor heap being bound sometimes after D3D12 mipmap generation
- Fixed format conversion for formats from "GL_NV_depth_buffer_float" OpenGL extension and "GL_ALPHA", "GL_LUMINANCE", "GL_INTENSITY" and "GL_LUMINANCE_ALPHA"
Miscellaneous:
- Added "vkAcquireNextImageKHR" hook to update back buffer index in Vulkan
- Added support for imgui command user callbacks
- Added support for "command_list::copy_buffer_to_texture()" from buffer resource to back buffer in OpenGL (compatibility OpenGL contexts only)
- Added support for push descriptors with multiple descriptor ranges (see "pipeline_layout_param_type::push_descriptors_ranges")
- Added support for creating multisampled textures in OpenGL
- Added "bind_*" events for D3D10/11/12 "ClearState" command
- Added "push_descriptors" event for "ID3D12GraphicsCommandList::Set(Compute/Graphics)Root(ShaderResource/UnorderedAccess)View"
- Added "bind_descriptor_sets" event for "ID3D12GraphicsCommandList::Set(Compute/Graphics)RootSignature"
- Improved D3D12/Vulkan barrier access to "resource_usage" enum conversion
- Changed preset saving to skip "TechniqueSorting" key when it is equivalent to the "Techniques" key
- Removed automatic D3D12 descriptor state backup and restore in "render_effects" and "render_technique" (this is better done properly inside add-ons using these)
5.5.1:
- Added "screenshot" uniform source which is true while a screenshot is being taken
- Changed depth buffer detection to skip depth buffers that were not used for at least a frame
- Changed depth buffer list in overlay to keep showing unused items for a few frames and sort by texture dimensions
- Changed loading of preset to sort techniques alphabetically when not otherwise specified in the preset
- Fixed crash on startup in Vulkan games with signed build of ReShade
- Fixed crash when exiting Yuzu when using OpenGL
- Fixed crash in Uncharted: Legacy of Thieves Collection
- Fixed crash when "vkDestroy[...]" is called with a "VK_NULL_HANDLE" object (e.g. done by VKD3D)
- Fixed previous depth-stencil shader resource view not being unbound when creation of new one failed
- Fixed missing resource view description for some render target/depth-stencil views in D3D12
- Removed directory from add-on file name in add-on settings when it matches that of the add-on search path
5.5.2:
- Added compile times for effects to log
- Added compile error when texture with a semantic is used as a render target or storage
- Added warning when input cannot be captured for window because it was created by a different process (e.g. in Portal with RTX)
- Added "copy_buffer_to_texture" event for OpenGL texture updates from a pixel unpack buffer binding
- Added format conversion for "VK_FORMAT_A8B8G8R8_[...]_PACK32"
- Improved CPU-side performance of effect rendering slightly
- Improved error handling for filesystem errors
- Changed add-on list in overlay to hide file path for built-in add-on
- Changed input handling to ignore raw input on secondary windows that are not input sinks
- Changed error on choosing layered pixel format in OpenGL to a warning (this fixes a crash with Tomb1Main)
- Changed shader model 5 implementation of "tex2Dgather" intrinsic overloads taking individual offsets to visually match GLSL/SPIR-V
- Fixed typo in D3D9On12 exports
- Fixed crash with D3D9On12 due to incorrect vertex count provided to "DrawIndexedPrimitive" (this fixes a crash in D3D9 games with 12th Gen Intel graphics processors)
- Fixed crash due to use-after-free in "vkFreeDescriptorSets"
- Fixed crash with Stream overlay and Vulkan validation layers due to dispatch pointer not being initialized for queues
- Fixed Thief: Deadly Shadows hanging and/or not exiting
- Fixed ReShade FX compiler not generating a cast to merged type for elements in array initializer expressions
- Fixed ReShade FX compiler emitting an error for "for" loop statements without an initializer expression
- Fixed unknown depth buffer format being shown for some depth buffers in Avorion
- Fixed insufficient initial data array passed to OpenGL "init_resource" and "create_resource" events for cubemaps
- Fixed hooking when multiple virtual function tables refer to the same hook function (e.g. in D3D9 games with Steam overlay)
- Fixed mismatching errors being shown in editor for generated code
- Fixed texture sampling of textures with a semantic in D3D9 applying incorrect pixel offsets
- Fixed warning about in-use depth-stencil resource being destroyed after effect runtime was already destroyed
- Removed built-in FreePIE support and instead moved it into an add-on
- crosire
28 Aug 2022 21:57 - 16 Sep 2022 16:58
5.4 was created by crosire
Changelog
5.4.0:
Features:
Bug fixes:
Miscellaneous:
Setup tool:
5.4.1:
5.4.2:
5.4.0:
Features:
- Added configurable preset keyboard shortcuts (right click on the preset selection button in the overlay to set a keyboard shortcut for that preset)
- Added "Choose last clear operation with high number of draw calls" depth buffer detection option (enable this in Source Engines games, fixes depth buffer detection in Garry's Mod)
- Added add-on API methods to enable/disable all effects and change the preset
- Added "reshade_render_technique" add-on event that is called for every technique ReShade renders
Bug fixes:
- Fixed crash in Tony Hawk American Wasteland
- Fixed crash in vkQuake
- Fixed crash when D3D9 runtime is using D3D9on12 internally
- Fixed crash with VKD3D
- Fixed black screen in Jak Project
- Fixed config changes not saving when there are multiple runtime instances
- Fixed window size used for scaling mouse position not updating after resize
- Fixed incorrect SPIR-V code generation for matrix multiplications with a scalar variable (fixes MotionEstimation.fx under Vulkan)
- Fixed controller force feedback not working in DirectInput games like Mafia
- Fixed potential crash on old OpenGL drivers without support for OpenGL 4.5
- Fixed add-on API pipeline handles created by application in OpenGL
- Fixed depth buffer detection in DOOM Eternal again (and other games that render and present on different queues)
Miscellaneous:
- Added support for "ID3D12Device11" and "ID3D12GraphicsCommandList8" interfaces
- Added warning log messages for unknown interfaces in D3D12 creation routines
- Changed hooking of "ID3D12PipelineLibrary" to use vtable hooks and only hook when an add-on requires it
- Changed effect file search to skip duplicated search paths (no more duplicated techniques when a path is in search paths multiple times)
- Changed default variable editor height for better visibility in VR overlay
- Disabled line information in generated shader code by default to reduce effect cache size (since no file paths are added to generated code, which means it can be reused across games; can enable again by setting "NoDebugInfo" to 0 in ReShade.ini)
- Improved memory footprint slightly by avoiding registration of resource/pipeline/... destruction callbacks when not required by an add-on
- Removed "ReShadeGUI.ini" and instead always save window state in main config file
Setup tool:
- Added txt files to preset selection file extension filter
- Added support for "DepthCopyAtClearIndex" in compatibility list
- Fixed display of underscore characters in setup tool effect file selection
- Improved application list filtering slightly to skip common crash report and update helper executables
5.4.1:
- Added highlighting for matching parentheses and brackets in the code editor
- Added error log message when transient descriptor handle allocation failed
- Added warning log message when unloading export module failed
- Added workaround for missing "ID3D12GraphicsCommandList4::BeginRenderPass" support in VKD3D (fixes ReShade rendering in D3D12 games on Linux)
- Fixed shading/banding artifacts in Call of Duty: Modern Warfare and Far Cry 6
- Fixed crash in Cyberpunk 2077 patch 1.6
- Fixed crash in Star Wars: The Force Unleashed 2
- Fixed overlay breaking when clicking the preset undo button
5.4.2:
- Added entry point name to the log for generic D3DCompiler error messages
- Added warning log message when add-on unloading failed
- Fixed performance issues in some games introduced by 5.4.1
- Fixed runtime constantly reinitializing in Cyberpunk 2077 with d3d12on7 (Windows 7)
- Fixed window becoming transparent with effects that do not return an alpha value in Ryujinx (behavior can be changed via "[APP] EnableTransparency=1" config option)
- Fixed Steam overlay not working with ReShade installed in some cases
- Fixed overlay docking state not being restored from config file
- Fixed implicit back buffer copy failing when source resource has multiple mipmap levels
- Fixed crash in D3D12 games when "reshade::api::effect_runtime::render_effects" is called during the frame
- Fixed depth buffer detection in vkQuake
- Improved Unreal Engine executable detection in setup tool (now finds the right executable for Sonic Omens automatically for example)
- Improved setup tool startup speed by delaying archive extraction and config download
- crosire
09 Apr 2022 00:06 - 28 May 2022 00:32
5.1 was created by crosire
Changelog
5.1.0:
Features:
Bug fixes:
Miscellaneous:
Setup tool:
Regarding Vulkan, the setup tool now maintains a list of applications in %LOCALAPPDATA%\ReShade\ReShadeApps.ini. If ReShade is being loaded into a Vulkan application from %LOCALAPPDATA%\ReShade\ReShade[32/64]\ReShade[32/64].dll, then it will only activate if that application executable path is in this list. Otherwise ReShade will prevent itself from loading. You can delete %LOCALAPPDATA%\ReShade\VkLayer_override.json, it is no longer used. Do note that you'll have to reinstall ReShade to all Vulkan games, previous installs are not updated automatically.
Also note that ReShade will not load in Vulkan games that are launched as administrator by default! This is because the Vulkan loader ignores user layers (in the "HKEY_CURRENT_USER\SOFTWARE\Khronos\Vulkan\ImplicitLayers" registry key) when doing so, but ReShade is installed as one. If you want to use ReShade in applications that are executed as administrator, need to move the registry entry pointing to ReShade64.json to "HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\Vulkan\ImplicitLayers" and the entry pointing to ReShade32.json entry to "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Khronos\Vulkan\ImplicitLayers". Do not attempt this if you are not familiar with the Windows registry!
5.1.0:
Features:
- Improved depth buffer detection when games are clearing them during the frame (check "Copy depth buffer before clear operations, now works again in Bioshock: Infinite and more)
- Added line informing which graphics API is being used to the "Statistics" page
- Added option to ignore variable limits when holding down Ctrl key while clicking drag widget buttons to adjust value
- Added "reshade_overlay" event to ReShade API (called every frame for custom dear imgui code)
- Added "reshade_screenshot" event to ReShade API (called when a screenshot is taken)
- Added support for "R16" texture format for effects
- Added "BUFFER_COLOR_SPACE" preprocessor definition which contains the color space type for presentation (0 = unknown, 1 = sRGB, 2 = scRGB, 3 = HDR10 ST2084, 4 = HDR10 HLG)
- Added support for "#pragma warning" to configure warnings
- Added option to skip shader optimization via "#pragma reshade skipoptimization" directive in effect code
- Added global config option to prevent unloading of ReShade module, which can be used to work around crashes occuring when exiting an application and having loaded any ReShade add-ons and a crash of the Fallout: New Vegas launcher
[INSTALL] PreventUnloading=1
Bug fixes:
- Fixed crash in RAGE 2
- Fixed crash in NieR Replicant when running through DXVK
- Fixed crash due to memory corruption during Vulkan pipeline creation
- Fixed crash when exiting Resident Evil 3 in fullscreen mode
- Fixed broken shadows in some D3D9 games, including Borderlands 2, Payday 2, Sims 4, ...
- Fixed broken rendering in some D3D9 games, including The Elder Scrolls IV: Oblivion, Fallout: New Vegas, ReIMAGINE, ...
- Fixed darkened cockpit in X-Plane 11
- Fixed flickering cockpit screens in X-Plane 11
- Fixed texture creation in games using the Gold Source engine
- Fixed incorrect vertex ID passed to shaders in D3D9 when rendering more than 100 vertices
- Fixed incorrect vertex and primitive count for D3D9 draw calls with point primitives
- Fixed OpenGL mipmap generation producing artifacts sometimes
- Fixed artifacts when rendering OpenGL effects that use multiple compute shaders
- Fixed overlay disappearing in Vulkan after an invalid operation occured
- Fixed "init_pipeline" event not being called for pipeline libraries in D3D12 (e.g. Red Dead Redemption 2)
- Fixed "create_swapchain" event not being called before swap chain resizes in D3D10/11/12
- Fixed "reset_command_list" event not being called after D3D12 command list creation
- Fixed meaning of render pass load and store operations
- Fixed missing error notification when writing screenshot file failed
- Fixed "Collapse/Expand all" button showing up even when it is not usable
- Fixed keyboard controls showing up even when they are not usable (e.g. in VR)
- Fixed global preprocessor popup dialog size being very small sometimes
- Fixed leaking process handle after executing screenshot post-save command
Miscellaneous:
- Improved performance of depth buffer detection
- Added error log message when loading add-on that is using an unsupported API version
- Added preset transition when using GUI buttons to switch preset (as was already happening when using keyboard shortcuts)
- Added texture format to depth buffer list shown in the GUI
- Added notice when no clear operations were found for the selected depth buffer
- Moved warning that texture could not be loaded into technique tooltip
- Changed warning about limited add-on functionality on "Add-on" page to be less pronounced
- Changed SPIR-V code generation to always initialize output variables with zero (to immitate HLSL behavior)
- Changed default effect cache path to %TEMP%\ReShade, rather than %TEMP%
- Removed highlighting of techniques with warnings in the technique list
- Removed preset save button when performance mode is active (since it would clear out the preset)
Setup tool:
- Reworked Vulkan installation (again) to use allow list that is checked when ReShade is loaded
- Fixed "Social Club failed to initialize graphics device; error code 18" in Red Dead Redemption 2 as part of the reworked Vulkan installation method
- Fixed setup tool not unloading executable image after analyzing it (and therefore keeping it locked while the setup tool is open)
- Changed default configuration file generation to always include the "APP" section, so there is more awareness that it exists
Regarding Vulkan, the setup tool now maintains a list of applications in %LOCALAPPDATA%\ReShade\ReShadeApps.ini. If ReShade is being loaded into a Vulkan application from %LOCALAPPDATA%\ReShade\ReShade[32/64]\ReShade[32/64].dll, then it will only activate if that application executable path is in this list. Otherwise ReShade will prevent itself from loading. You can delete %LOCALAPPDATA%\ReShade\VkLayer_override.json, it is no longer used. Do note that you'll have to reinstall ReShade to all Vulkan games, previous installs are not updated automatically.
Also note that ReShade will not load in Vulkan games that are launched as administrator by default! This is because the Vulkan loader ignores user layers (in the "HKEY_CURRENT_USER\SOFTWARE\Khronos\Vulkan\ImplicitLayers" registry key) when doing so, but ReShade is installed as one. If you want to use ReShade in applications that are executed as administrator, need to move the registry entry pointing to ReShade64.json to "HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\Vulkan\ImplicitLayers" and the entry pointing to ReShade32.json entry to "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Khronos\Vulkan\ImplicitLayers". Do not attempt this if you are not familiar with the Windows registry!
- crosire
03 Jan 2021 18:34 - 09 Jan 2021 21:19
4.9 was created by crosire
Changelog
4.9.0:
4.9.0:
- Added effect caching
Compiled effects are now cached to disk, so that subsequent loads can use the cached data to speed up loading significantly. By default the cache is stored in %TEMP%, so that it can be shared across all ReShade installations. To override the location, change the "IntermediateCachePath" option under "[GENERAL]" in ReShade.ini. There is a new button on the Settings tab to clear the cache (sometimes necessary to ensure changes to effect files are applied). - Added support for D3D12on7 (ReShade now works in Cyberpunk 2077 on Windows 7)
- Added depth buffer copy before clear in OpenGL (depth buffer detection now works in Minecraft)
- Added ReShade FX support for rectangular matrices and integer matrix multiplication
- Added error to log when trying to capture screenshot for 16-bit back buffer (which is not supported)
- Added option to move all techniques from an effect file simultaneously in the UI technique list by pressing the shift key
- Added text logging for some common back buffer formats
- Added debug names to D3D11 and D3D12 objects in release builds to simplify debugging with the debug layers
- Added option to filter application list in setup tool using custom search terms (start typing into the text box at the bottom of the application list to filter it)
- Added warning message box to setup tool when enabling global Vulkan layer
- Improved HLSL and GLSL loop code generation for simple condition expressions
- Improved general frame update performance slightly
- Changed editor window to support opening multiple tabs pointing to different files
- Changed logging to use Win32 API directly (to allow multiple editors to open the log simultaneously)
- Changed texture pooling to not share textures within the same effect file
- Fixed local network traffic (on localhost) counting towards the network detection heuristic
This means that depth buffer detection is no longer blocked in games that run local servers in single player, like in Minecraft - Fixed mouse cursor being locked in a small portion of the screen in some games
- Fixed corrupted depth data in D3D12 apps (e.g. Cyberpunk 2077)
- Fixed ReShade not showing up in D3D9 apps that do not have an override window set for presentation (e.g. MPC-HC)
- Fixed progress bar for compiling effects not actually showing any progress
- Fixed enabling an effect not auto-selecting the relevant tab in the variable list if the tab UI is used instead of the tree UI
- Fixed disabling "Load only enabled effects" option not reloading skipped effects
- Fixed potential crash when an INI file is loaded while effects are still being loaded
- Fixed OpenGL context creation using incorrect profile flags when game is using OpenGL 3.0 or 3.1
- Fixed OpenGL compatibility flag not being set in some cases for legacy contexts
- Fixed global app config options being read from wrong section in DXGI
- Fixed D3D11 texture description not being overwritten for "ID3D11Device3::CreateTexture2D1" calls
- Fixed "vkDestroyDevice" hook not being called
- Fixed hook error logged on Windows 7 when "CreateDXGIFactory2" is called
- Fixed it being possible to move variable editor splitter outside window area
- Fixed preprocessor hanging when encountering macro with an unterminated argument list
- Fixed duplicate sample and storage references in effect passes
- Fixed crash if an invalid sampler or storage is referenced in effect pass
- Fixed setup tool exception when extracting repository without a dedicated "Textures" directory
- Renamed screenshot config section to "SCREENSHOT" instead of "SCREENSHOTS" (setup tool will update your config automatically)
- Renamed depth buffer detection related config options to all reside within a "DEPTH" section instead of separate "D3D9/10/11/12/OPENGL/VULKAN" sections
- Renamed all references to "shaders" to "effects"
- Cleaned up punctuation in log messages
- Added support for "asint" and "asfloat" under shader model 3 using emulated implementation
- Improved sorting of depth stencil objects in the UI list to avoid list moving around a lot
- Fixed GPU crash when switching depth buffers and missing depth buffer data in some effects in D3D12 (especially in Cyberpunk 2077)
- Fixed code generation for loops under D3D9 causing artifacts and extreme slowdowns with some effects (most notably Deband.fx)
- Fixed splash bar at the top not disappearing after a swap chain reset anymore
- Fixed variable list not disappearing after disabling all techniques of a cached effect
- Fixed D3D9 effects recompiling even when no changes were made and they are in cache
- Fixed UI problems when uniform variable requests slider widget without setting "ui_min" or "ui_max" limits
- Fixed saving in editor not updating the error list after effect reload
- Fixed Vulkan depth buffer binding update when effect contains multiple textures referencing depth semantic
- Fixed "frexp" intrinsic to write integral exponent rather than floating-point (for GLSL/SPIR-V compatibility, signature is now "float frexp(float x, out int exp)")
- Fixed log containing mixed LF and CRLF
- Fixed potentially duplicated uniforms after reloading an effect
- crosire
25 Oct 2020 12:01 - 10 Dec 2020 15:02
4.8 was created by crosire
Changelog
4.8.0:
4.8.1:
4.8.2:
ReShade FX support equivalent to this version is part of FreeStyle in NVIDIA driver version 460.79.
4.8.0:
- Added compute shader support to ReShade FX shader language, supported in D3D11, D3D12, OpenGL and Vulkan. Example:
#include "ReShade.fxh" texture testTex { Width = 32 * 2; Height = 1024; Format = RGBA8; }; storage testStore { Texture = testTex; }; sampler testSample { Texture = testTex; MinFilter = POINT; MagFilter = POINT; }; groupshared float test[32]; void Test_CS(uint3 id : SV_DispatchThreadID, uint3 tid : SV_GroupThreadID) { test[tid.x] = id.x / 32.0; barrier(); if (tid.x % 2 == 0) test[tid.x] += test[tid.x + 1]; else test[tid.x] = 1; barrier(); tex2Dstore(testStore, id.xy, float4(test[tid.x].xxx, 1)); } float3 Final_PS(float4 vpos : SV_Position, float2 texcoord : TexCoord) : SV_Target { return tex2D(testSample, texcoord).rgb; } technique Compute { pass { // Specify the local thread group size as part of the compute shader assignment // Format is "FunctionName<X, Y, Z>", but Z is optional ComputeShader = Test_CS<32, 1>; DispatchSizeX = 2; DispatchSizeY = 1024; // Can also add "DispatchSizeZ" for 3D-launches } pass { VertexShader = PostProcessVS; PixelShader = Final_PS; } }
- Added option to not clear alpha channel of screenshots
- Added option to include preset name in screenshot file name
- Added JPEG as a screenshot format option
- Added option to duplicate current preset when creating a new one
- Added option to only load enabled effects
- Added performance mode toggle keyboard shortcut
- Added global option to force fullscreen mode in D3D, ReShade.ini:
[D3D9] ; or [DXGI] ForceFullscreen=1
- Added support for global config file to change base and module load path (instead of having to rely on environment variables). To use, ceate an INI file with the same name as the ReShade DLL (e.g. dxgi.ini) next to it, with these contents:
[INSTALL] BasePath=path/ReShade/should/use/as/base/for/all/relative/paths ModulePath=path/ReShade/should/load/DLLs/from
- Added position of separator between technique and variable list in UI to config (so it is persistent between runs)
- Added technique context menu button to open containing folder in Windows explorer
- Added category context menu button to reset all variables in that category to their default values
- Added separate code viewer window, so one can view generated code and edit a shader simultaneously
- Added editor support for "Shift + Tab" to remove line indentation without selection
- Added editor support for paste on new line
- Added visual indicator to text editor title when open document is unsaved
- Added message to home tab when a texture failed to load
- Added yellow highlight to items in the technique list where the underlying effect compiled with warnings and added those warnings to the tooltip
- Added effect parser error when encountering multi-dimensional array
- Added effect parser error when using sRGB sampling on back buffer but back buffer format is not RGBA8
- [strike]Added effect parser error when static variable initializer is not a literal expression. This is a breaking change for some effects![/strike]
- Added effect parser warning when specifying negative value for texture property
- Added "tex2Dsize" intrinsic overload which takes a storage object (for compute shaders)
- Added "barrier", "memoryBarrier" and "groupMemoryBarrier" intrinsics for use in compute shaders
- Added atomic intrinsics "atomicAdd", "atomicAnd", "atomicOr", "atomicXor", "atomicMin", "atomicMax", "atomicExchange" and "atomicCompareExchange"
- Added support for "SV_IsFrontFace" semantic to GLSL/SPIR-V code generation
- Added support for "min16int", "min16uint" and "min16float" scalar and vector types
- Added "mousewheel" source for uniform variables to use mouse wheel input
// Value starts at 1.0. When user moves the mouse wheel up, it goes up, but not past 10.0. // When user moves the mouse wheel down it goes down, but not past 0.0. uniform float value < source = "mousewheel"; min = 0.0; max = 10.0; step = 1.0; > = 1.0; // You can also add a second component, which then holds the current wheel state // (How much the wheel was moved this frame): // So value.y is +1 when wheel went up, or -1 when it went down uniform float2 value < source = "mousewheel"; ... >;
- Added "overlay_active" and "overlay_hovered" source to uniform variables, which hold the index (from the top in the effect file) of the UI widget the user is currently entering a value in or hovering in the UI
uniform float value1 < ui_type = "drag"; >; uniform float value2 < ui_type = "slider"; >; // Is zero by default, 1 when "value1" is being modified, 2 when "value2" is being modified uniform int active < source = "overlay_active"; >; // Is zero by default, 1 when mouse cursor is over "value1" in UI and 2 when it is over "value2" uniform int hovered < source = "overlay_hovered"; >;
- Added more verbose logging in case of D3D10/11 resource creation failures
- Added pass names for passes writing to a texture on the statistics page
- Added device and driver information to UI in OpenGL
- Added support for comma character in INI elements
- Added path text box to app selection in setup tool
- Added different sort modes to app selection in setup tool
- Added button to add custom effect package to setup tool
- Added option to skip individual effect selection using three state checkboxes to setup tool
- Added setup tool archive validation when opening it
- Added standard Epic Games Launcher install location to setup tool search paths
- Added heuristic to setup tool that chooses the depth reversed setting based on the year a game came out
- Added error to setup tool when installing to an application that already has ReShade installed via a different render API
- Added notice on how to uninstall to final setup tool screen
- Added signature to setup tool
- Improved file and directory selection dialogs (including the preset selection) and added icons
- Improved format of variable names in generated GLSL code for better readability
- Improved effect parser error recovery for errors inside struct definitions
- Improved speed of setup tool application detection
- Changed INI option names for a cleaner look! The setup tool will update them when installing over an existing config, but be aware of this when doing a manual update, since some of your settings may get lost.
- Changed preset path option to save as a relative path to the ReShade DLL if preset is in the same or a subdirectory
- Changed "tex2Dfetch" intrinsic to accept coordinates without a mipmap level and added seprate overload which accepts a mipmap level. This is a breaking change, so make sure to update your shaders (it will continue to compile with warnings in most cases, since int4 can be implicitly casted to int2, but only behaves the same then if the passed in mipmap level was zero)!
// The declarations now look like this: float4 tex2Dfetch(sampler2D s, int2 coords); float4 tex2Dfetch(sampler2D s, int2 coords, int lod);
- Changed D3D9 depth buffer detection logic to always run independently on each frame (fixes flickering in some games, like RE4 Remastered HD)
- Changed splash banner to disappear immediately after reloading finished on all reloads except the first one
- Changed assembly viewer text to get updated after an effect finished compiling
- Changed HLSL compilation to enable highest optimization level only when performance mode is active
- Changed configuration to save and restore custom style independently of the fixed presets (so its not lost when switching between those)
- Changed keyboard shortcuts to be inactive while typing into text boxes
- Changed item width for variable editor UI widgets
- Changed texture name reservation to only run in OpenGL compatibility contexts by default
- Changed default preset file name to "ReShadePreset.ini"
- Changed setup tool to install to "bin" directory if one exists next to the executable (for Source Engine games)
- Fixed mouse button double clicks not registering
- Fixed red and blue color channel being switched in D3D12 screenshots in some applications
- Fixed hang in Vulkan games because fence completion check was comparing against wrong return value
- Fixed partial screen updates in D3D9 messing up ReShade rendering (e.g. in IL-2 Cliffs of Dover)
- Fixed hooks not being installed in applications that call "LoadLibraryExA/W" with flags (e.g. Prey)
- Fixed duplicated D3D10/D3D11 hooks (since the D3D10 driver may use D3D11 internally)
- Fixed D3D9 depth surface replacement messing up games using INTZ format themselves (e.g. Dead Space)
- Fixed artifacts in D3D9 games using partial depth buffer clears
- Fixed artifacts in OpenGL games using GL_ALPHA_TEST
- Fixed unbound key shortcuts potentially triggering if application sends input messages for key code zero
- Fixed crash if application calls "ID3D11Device::CreateShaderResourceView" and similar with a nullptr resource (e.g. in Snowrunner)
- Fixed crash when application unloads ReShade while a thread is still calling "GetMessage" (e.g. in Dolphin)
- Fixed crash in Vulkan when data race occurs after multiple threads failed to access a value from a lockfree table (e.g. in Baldur's Gate)
- Fixed crash if font atlas creation fails
- Fixed crash when parsing ReShade FX code that attempts a function call outside of a function
- Fixed crash if ReShade FX code contains shader function with an output parameter or return value without a semantic
- Fixed crash when pressing "Shift + Tab" in editor with a line that has only spaces selected
- Fixed R8 and RG8 textures having an alpha value in D3D9
- Fixed wrong render targets being set in D3D12 if effect contains multiple techniques
- Fixed primitive topologies other than triangles not working in OpenGL
- Fixed "tex2Dstore" intrinsic writing with a slight offset in OpenGL
- Fixed precision of floating-point constants in generated HLSL/GLSL code
- Fixed preprocessor removing spaces in macro arguments
- Fixed preprocessor not trimming all whitespace before and after macro arguments and around concatenation operator
- Fixed preprocessor not adding adding backslashes to escape quotes in stringize operator
- Fixed code generation for switch statements with multiple cases pointing to the same block
- Fixed SPIR-V code generation for struct member accesses on function return values
- Fixed SPIR-V code generation for struct input parameters
- Fixed SPIR-V code generation for switch statements that contain branches
- Fixed SPIR-V code generation for "inout" function parameters with semantics and arrays
- Fixed HLSL code generation for global "static" variables
- Fixed HLSL code generation for loops on uniform variables in shader model 3
- Fixed missing interpolation qualifiers in generated GLSL code for struct return values
- Fixed location calculation for GLSL array input and output variables
- Fixed GLSL code generation for "inout" function parameters with semantics
- Fixed GLSL code generation for shaders that have multiple input or output parameters with the same semantic
- Fixed effect parser error when initialization array of structs using initializer list syntax
- Fixed incorrect FreePIE uniform data padding
- Fixed "timeout" annotation on techniques for very small values (so one can now set it to "1" to only have the technique run a single time)
- Fixed division by zero if min/max are switched for "random" uniform source
- Fixed user being able to enter invalid characters as a preprocessor macro name
- Fixed dragging technique to a new location not preserving order of the others
- Fixed editor font affecting search and replace buttons
- Fixed pooled textures not always showing up on statistics page
- Fixed double click behavior on app selection list in setup tool (it now only reacts if the same item is clicked twice)
- Removed "tex2Dgather" intrinsic and instead split it into separate variants for each component:
float4 tex2DgatherR(sampler2D s, float2 coords); // equal to previous "tex2Dgather(s, coords, 0);" float4 tex2DgatherG(sampler2D s, float2 coords); // equal to previous "tex2Dgather(s, coords, 1);" float4 tex2DgatherB(sampler2D s, float2 coords); // equal to previous "tex2Dgather(s, coords, 2);" float4 tex2DgatherA(sampler2D s, float2 coords); // equal to previous "tex2Dgather(s, coords, 3);"
- Removed separate "tex2D[...]offset" texture intrinsics and instead made them overloads
float4 tex2D(sampler2D s, float2 coords); float4 tex2D(sampler2D s, float2 coords, int2 offset); float4 tex2Dlod(sampler2D s, float4 coords); float4 tex2Dlod(sampler2D s, float4 coords, int2 offset); float4 tex2DgatherR(sampler2D s, float2 coords); float4 tex2DgatherR(sampler2D s, float2 coords, int2 offset); ...
- Removed technique percentage numbers from statistics (since they where commonly misunderstood)
- Removed support for "POSITION", "VPOS" and "DEPTH" input semantics (use "SV_Position" and "SV_Depth" instead)
- Removed error limit again since it can hide errors behind a lot of warnings
4.8.1:
- Added automatic texture reference tracking to effect compiler (it now knows which passes use which textures)
- Improved performance of compute passes
- Improved OpenGL effect rendering performance
- Changed compiler to remove "static" qualifier from local variables to fix some effects failing to compile since the 4.8 update
- Changed sRGB sampling check on back buffer to a warning instead of an error
- Changed reference display for textures on the statistics page to a more detailed break down of where and how they are used
- Changed cycle order of effect package checkboxes in setup tool
- Fixed docking windows to other windows not working
- Fixed compute shaders not being able to read from textures also used as storage
- Fixed GLSL code generation not removing all duplicated underscore symbols in names
- Fixed Vulkan textures not being cleared to zero on creation
- Fixed OpenGL mipmaps looking slightly different than in the other APIs
- Fixed crash on startup with RenderDoc attached
- Fixed screenshot with overlay not being created for preview texture window
- Fixed texture load failure message listing all textures of disabled effects too
- Fixed setup tool installing to the wrong directory for "Vampire: The Masquerade" game
4.8.2:
- Added missing hooks for "Direct3DCreate9on12" and "DXGIDeclareAdapterRemovalSupport"
- Fixed crash when effects use pooled textures
- Fixed crash in D3D9 games that have Windows compatibility fixes active (ReShade now finally works in SWTOR, when correctly installed as d3d9.dll!)
- Fixed artifacts and depth buffer detection in the first "The Witcher" game
- Removed global settings ("ForceFullscreen", "Force10BitFormat", etc.) from ReShade.ini and instead moved those into [ReShade DLL Name].ini (e.g. d3d9.ini/dxgi.ini/opengl32.ini) file
[APP] ForceVSync=0 ForceWindowed=0 ForceFullscreen=0 ForceResolution=0,0 Force10BitFormat=0
ReShade FX support equivalent to this version is part of FreeStyle in NVIDIA driver version 460.79.
- crosire
24 Jun 2020 19:01 - 24 Jun 2020 20:55
4.7 was created by crosire
Changelog
4.7.0:
ReShade FX support equivalent to this version is part of FreeStyle in NVIDIA driver version 451.48.
4.7.0:
- Improved depth buffer detection in several D3D10, D3D11 and D3D12 games (like Bioshock Infinite, Subnautica and Titanfall 2)
- Added hidden option to add new search path without opening directory selection dialog (press Alt key)
- Added device and driver information to log for all APIs
- Added global settings to force window mode and swap chain resolution in D3D
[APP] ForceVSync=1 ForceWindowed=1 ForceResolution=800,600 Force10BitFormat=1
- Fixed depth buffer being overwritten in some D3D9 games before it can be used in ReShade
- Fixed mouse cursor stuck in the center of the screen in some applications (like Detroit: Become Human)
- Fixed keyboard state getting stuck in some applications while menu is open
- Fixed first effect in the list sometimes not receiving depth buffer
- Fixed support for Civilization VI (because of missing ID3D12Device6 implementation)
- Fixed crash in Vulkan games using "vkCreateRenderPass2" (like Hammerting)
- Fixed crash when DXGI 1.2 is used on systems where render GPU is not attached to the output display (e.g. laptops)
- Fixed crash if input object is destroyed in separate thread while a message is processed
- Fixed calls to "IDXGISwapChain3::ResizeBuffers1" always failing with "DXGI_ERROR_INVALID_CALL" (like in Hitman 2)
- Fixed screenshots in Vulkan sometimes not capturing effects
- Fixed red and blue color channel being swapped in D3D9 screenshots when backbuffer format is 10-bit
- Fixed mouse button state being reset every frame
- Fixed uniform offset calculation for matrix arrays
- Fixed SPIR-V code generation for uniform matrices
- Fixed SPIR-V code generation for specialization constant arrays
- Fixed half-pixel offset fix not being applied to struct output variables in HLSL code generation
- Fixed font atlas texture being destroyed while still in use in D3D12 and Vulkan
- Fixed incorrect handling of XBUTTON mouse events
- Fixed crash when parsing vendor and device ID in OpenGL running under Remote Desktop
- Removed memory copy of log and instead read it back from file when the "Log" tab is opened (to reduce RAM usage)
ReShade FX support equivalent to this version is part of FreeStyle in NVIDIA driver version 451.48.
- crosire
09 Apr 2020 19:50 - 14 Apr 2020 17:52
4.6 was created by crosire
Changelog
4.6.0:
4.6.1:
4.6.0:
- Reworked effect selection in setup tool to a list of effect packages instead of individual files
- Improved API detection in setup tool (and automatic selection for a known list of games)
- Improved performance for effects with many passes that write to custom render targets
- Improved D3D12 resource state management
- Improved line information for errors in evaluated preprocessor macros
- Added setup tool self-verfication at startup, which will show an error if the archive is corrupted immediately
- Added default log file to help with troubleshooting
- Added option to skip application scanning in setup tool by pressing "Alt" button while clicking on "Select ..."
- Added Vulkan memory allocator for improved memory management
- Added error message to log when DXGI encounters a device loss
- Added parser error when encountering a interpolation qualifier mismatch between vertex and pixel shaders
- Added parser error when encountering a vertex or pixel shader parameter without semantics
- Added preprocessor error when encountering an unterminated string literal
- Added limit to the number of compile error messages shown
- Added missing license statements to about page in UI
- Added configuration file fall back for technique sorting (reads "TechniqueSorting" from "GENERAL" section if preset does not define it)
- Added FreePIE IO support
uniform float3 io_data[2] < source = "freepie"; index = 0; >; // io_data[0].xyz = yaw, pitch, roll // io_data[1].xyz = position
- Added image format list to Vulkan image creation for improved performance on some hardware
- Added shortcut keys for code editor search and replace
- Added code editor option to search and replace case insensitive
- Added support for leaving code editor focus with escape key
- Added support for "#" comments in INI files
- Added Vulkan API version to renderer ID (__RENDERER__)
- Added built-in "__FILE_NAME__" and "__FILE_STEM__" preprocessor macros
- Added more enum names to HRESULT values in log messages
- Added support to render point and line primitives from effects
pass { PrimitiveTopology = POINTLIST; // LINELIST, LINESTRIP, TRIANGLELIST, TRIANGLESTRIP VertexCount = 10; }
- Added special uniform to check if UI is open
uniform bool is_open < source = "overlay_open"; >;
- Changed setup tool to set buffer detection settings based on compatibility list
- Change "application" to "game" in setup tool descriptions
- Changed Vulkan depth buffer detection to use same heuristic as D3D9/OpenGL
- Changed default of "RESHADE_DEPTH_INPUT_IS_REVERSED" to 0 again
- Changed uniform boolean representation to use "1" and "0" instead of "-1" and "0"
- Changed effect tabs in UI variable list to stay in place when scrolling
- Changed UI screenshot creation to only attempt to create it if UI is actually open
- Changed effect preprocessor to only add preprocessor definitions to UI if their declaration is active
- Changed reload behavior to open the last edited code file again
- Changed code editor colorization to colorize a few additional lines above and below an edit for better multi-line comment handling
- Fixed keyboard navigation in setup tool
- Fixed setup tool crash when trying to change an empty preset path
- Fixed setup tool exit button not being shown while asking about existing installation
- Fixed text rendering in Spellforce 3 and image turning too dark sometimes
- Fixed missing UI in old OpenGL games using the "glVertexPointer" API (e.g. Call of Duty)
- Fixed error when launching Metro Exodus in D3D12 (because of missing "DXGIGetDebugInterface1" export)
- Fixed crash on systems where render GPU is not attached to the output display (e.g. on laptops with Optimus etc.) (thanks to sherief)
- Fixed crash when switching fullscreen mode when render GPU is not the display GPU
- Fixed crash in WineD3D and OpenGL games
- Fixed crash in Valkyria Chronicles when changing depth buffer detection settings
- Fixed crash in Call of Duty: Modern Warfare
- Fixed crash in D3D12 device creation when interface is not supported
- Fixed crash and "ID3D11Device::CreateShaderResourceView" errors in D3D10/11 games using MSAA or array depth stencil resources
- Fixed crash in effect preprocessor when input file is not terminated with a new line
- Fixed crash in D3D12 if runtime is reset before initialization
- Fixed crash in Resident Evil 3
- Fixed potential crash in D3D12 when changing resolution
- Fixed device loss in D3D12 in games creating depth-stencil resources with "ID3D12Device::CreateReservedResource"
- Fixed potential device loss in D3D12/Vulkan when switching UI tabs
- Fixed vertex shader usage of textures in D3D12
- Fixed D3D12 screenshots failing for RGB10A2 back buffer format
- Fixed D3D12 depth binding not being updated sometimes without reloading (e.g. in Strange Brigade)
- Fixed "bufready_depth" uniform not working in D3D9/10/11
- Fixed spacing in UI for depth buffer clears
- Fixed D3D9/10/11 textures not being cleared to zero when not used as render target
- Fixed duplicated error log messages if preprocessing step failed during effect compilation
- Fixed FPS overlay showing cut off at bottom of screen if text scale is larger than one
- Fixed GLSL code generation for integer varying variables
- Fixed locations for varyings with custom semantics in GLSL code generation
- Fixed GLSL and SPIR-V code generation for semantics with numbers other than "TEXCOORD"
- Fixed GLSL and SPIR-V code generation for uniform arrays
- Fixed function name in pass state validation error messages
- Fixed log message for special sample quality in swapchain description
- Fixed key down state being reset even if key is actually still held down
- Fixed code editor replace all not replacing all occurances in a document
- Fixed error handling in D3D10/11 runtime initialization
- Fixed reloading after a failed preprocessor definition change causing the effect to fail compiling
- Fixed Vulkan driver version displayed in the UI for NVIDIA drivers
- Fixed D3D11 immediate context interface version not being upgraded in "ID3D11Device::GetImmediateContext1/2" calls
- Fixed UI screenshot being taken of a different frame than the effect screenshot
- Fixed render artifacts in some D3D9 games because of INTZ usage that could not be disabled with high network activity
- Fixed potential issue with "CreateDXGIFactory2" writing to non-existent VTable entries
- Fixed line information for string literals that span multiple lines
- Fixed "#ifdef" and "#ifndef" not responding to built-in preprocessor defines
- Fixed artifacts in Vulkan applications presenting on a different queue than the rendering one
- Fixed OpenGL resources leaking when window was destroyed before calling "wglDeleteContext"
- Updated Vulkan layer API version to 1.2
- Removed unnecessary barriers in D3D12 depth buffer detection
- Removed support for point size builtin semantic (since it is not supported in D3D11)
4.6.1:
- Added individual effect file selection dialog to setup tool again
- Added help text to setup tool dialogs to explain them to new users
- Added option to relax modifier state checks for shortcuts
See reshade.me/forum/troubleshooting/6358-re...r-with-modifier-keys - Fixed corrupted image in Vulkan with effects that read and write to custom render targets
- Fixed stencil data looking corrupted in Vulkan
- Fixed input/output parameter structure flattening in SPIR-V code generation
- Fixed crash in AMD driver bug workaround
- Fixed "ReShadeGUI.ini" not always being created in the same directory as the "ReShade.ini" configuration file
- Fixed preprocessor errors not showing up in log
- Fixed macros used inside "#include" statement not working in included file
- Changed setup tool texture directory search to include "jpg" and "jpeg" extensions
- Changed "Cancel" button caption in setup tool effect package selection to "Skip"
- Changed "Standard effects" package to be a required package that cannot be deselected (since it contains ReShade.fxh which is used by many effects)
- crosire
14 Dec 2019 14:44 - 08 Feb 2020 16:50
4.5 was created by crosire
The next update is around, with big improvements to the Vulkan backend, effect compiler and the GUI. Not to mention better performance in DX12/Vulkan, improved depth buffer detection in DX9 and DX12, display of preprocessor definitions as variable widgets and new options for shader developers to customize how settings should be displayed in the GUI:
Changelog
4.5.0:
4.5.1:
4.5.2
4.5.3
4.5.4
Changelog
4.5.0:
- Rework depth buffer detection code for all APIs again (They are now more similar, including more options for OpenGL)
- Switched to using SPIR-V for shaders in OpenGL 4.6 for better performance (this needs recent drivers to work correctly)
- Added UI widgets for preprocessor definitions to variable list
- Added compiler error when passing a r-value to an out parameter of a function
- Added compiler error when pass is missing shader functions
- Added shader signature verification to effect compiler
- Added support for assignment chains to ReShade FX (e.g. "a = b = c = 0;")
- Added adjustment buttons to combo box widget and label to radio button list
- Added option to show only specific color components in texture preview
- Added context menu to technique list to edit included files in addition to the main source file
- Added support for texture pooling via "pooled" annotationReShade will now attempt to re-use the same memory for textures with the same dimensions and format if the pooled annotation is set. This works across effect files too.
texture MyTex1 < pooled = true; > { Width = 100; Height = 100; Format = RGBA8; }; texture MyTex2 < pooled = true; > { Width = 100; Height = 100; Format = RGBA8; };
- Added "ui_text" annotation for uniform variables to display custom text above the variable widget (see screenshot above)
uniform float test < ui_text = "This is text that will be rendered above the widget in the variable list"; >;
- Added support for GPU timings in Vulkan
- Added environment variable to override path ReShade should load the next DLL from
You can now set "RESHADE_MODULE_PATH_OVERRIDE" to a directory for ReShade to load the next DLL, so you can chain ReShade with other injectors - Added OpenGL version information to log
- Improved compiler error recovery for parsing errors in function parameter list and annotations
- Improved Vulkan command buffer management (which improves performance)
- Improved multi-threading of effect loading
- Changed setup tool to install global Vulkan layer while it is open (fixes issues with RDR2)
- Changed setup tool to use .NET framework 4.5 again for backwards compatibility
- Changed texture preview to be hidden when effects are disabled
- Changed COM reference counting behavior to better match COM requirements
- Change default preset path to executable directory for Vulkan compatibility
- Fixed memory leak in Vulkan (which worsened every frame)
- Fixed depth buffer detection in Vulkan
- Fixed setup tool not updating search paths to absolute paths in Vulkan
- Fixed HLSL compiler error for variables that are named "Technique" or "Pass"
- Fixed effect compile error with "discard" statement as last statement in a function with a return value
- Fixed effect compiler error in pass definition not causing effect compile to fail
- Fixed effect compiler error when multiple casts are chained in an expression
- Fixed annotation assignments not supporting literal expressions (you can now write stuff like "< ui_min = 1 + 2; >")
- Fixed effect compiler sometimes reporting duplicated syntax errors
- Fixed crash in effect compiler when encountering an undeclared identifier in a shader pass state
- Fixed empty preprocessor macros not being evaluated correctly
- Fixed GLSL code generation for matrix indexing
- Fixed GLSL code generation for vertex shaders with a return semantic
- Fixed GLSL code generation for some component-wise operations
- Fixed GLSL code generation for entry points with underscores in the name
- Fixed GLSL code generation for boolean values in index expressions
- Fixed GLSL code generation for arithmetic with matrices that are not floating point
- Fixed D3D10/11 depth stencil view creation failing in some games (e.g. ArmA 3)
- Fixed OpenGL depth texture creation failing for games using format "GL_DEPTH_COMPONENT" (e.g. Mugen 1.1)
- Fixed OpenGL states not being restored during texture upload, which caused texture artifacts in some games
- Fixed crash if "wglMakeCurrent" was called on an OpenGL context that was not hooked
- Fixed access to textures in vertex shaders in D3D9 (limited to 4 bindings though)
- Fixed "UseAspectRatioHeuristics" option not being stored in config file in D3D9
- Fixed wrong color write mask when there is more than one render target in D3D9
- Fixed Vulkan performance mode using wrong values
- Fixed current depth stencil inheritance in D3D12 buffer detection
- Fixed shared textures being deleted prematurely if a single effect is unloaded
- Fixed preset switching always falling back to DLL directory for next preset
- Fixed position of slider buttons
- Fixed slider buttons being able to change value outside valid range due to floating-point precision errors
- Fixed splash bar no longer appearing on reload after reloading a single effect
- Fixed scaling up the font size causing cropping some buttons and the display of textures on the statistics page
- Removed format filtering from depth buffer detection
- Removed tutorial skip button for all but the first tutorial step
4.5.1:
- Added "Ctrl + F" search support to code editor
- Added "bufready_depth" source for bool uniform variables to check if depth buffer is available
- Added error when going over the active effect limit of 50 in Vulkan
- Added "Reset to default" context menu entry for preprocessor definitions
- Added support for uniform matrix variables to UI and presets
- Added list of effect files that failed to compile to "Home" page
- Added automatic reset of preprocessor definitions if shader fails to compile after changing one
- Added UAC shield and button to cover global Vulkan layer check box in setup tool when not running with elevated privileges
- Changed "Reset all to default" button to also reset preprocessor defines
- Changed Vulkan layer installation location to HKLM instead of HKCU if the global option is selected
- Improved SPIR-V code generation for performance mode in Vulkan
- Fixed D3D9 render state block setup using invalid states (fixes artifacts in Sims 4)
- Fixed missing buffers in OpenGL depth buffer detection
- Fixed OpenGL depth buffer override
- Fixed cropped OpenGL depth buffers (in emulators, like CEMU)
- Fixed missing buffers in D3D9 depth buffer detection when "Copy before clear operations" is active (e.g. Mass Effect 2)
- Fixed keys getting stuck in down state (e.g. when Alt + Tabing):
ReShade will now automatically reset the key state when it has not been updated for more than 5 seconds - Fixed UI corruption with lots of text on the screen
- Fixed cursor position if render window was not visible during creation
- Fixed floating-point display precision for sliders
- Fixed constant folding for matrix index expressions
- Fixed setup crash if Vulkan layer installation was not successful
- Removed debug logging code from D3D9 that was left in by accident
4.5.2
- Added "Ctrl + H" replace support to code editor
- Added option to save screenshot with user interface visible
- Fixed hooking in Alan Wake
- Fixed inverted shaders and artifacts in OpenGL games (happens because of a driver bug, so had to disable use of SPIR-V there again)
- Fixed missing OpenGL depth buffer copy in Dolphin
- Fixed current OpenGL context getting lost when a different one is deleted but not current (WineD3D now works with ReShade)
- Fixed OpenGL depth buffer detection for when pixel format does not contain depth
- Fixed multiple ReShade instances in the same process interfering with each other by forcing a single instance
ReShade will now exit immediately if another instance was found in the same process already. - Fixed crash when pressing "Shift + Tab" in code editor with an empty line selected
- Fixed crash when searching backwards in code editor with the cursor at the end of a line
- Fixed uniform offset calculation for matrices in SPIR-V code generation
4.5.3
- Redesigned setup tool and added support for multiple shader repositories to download from
- Added better error description for type conversion errors
- Fixed "Print Screen" button status being reset every frame
- Fixed Vulkan swapchain image view creation for sRGB/non-sRGB formats
- Fixed Vulkan API version not being upgraded to required 1.1 in applications that use 1.0
- Fixed namespace resolving for function calls and structure names
- Fixed GLSL code generation for constant arrays
- Fixed line number for errors in generated GLSL code
- Fixed missing array size in generated HLSL/GLSL code for uniform variables
- Fixed hangs during shader compilation with specific applications on some drivers because of driver optimizations
- Fixed negative percentage values during effect downloading in setup tool
- Fixed error message not showing up when screenshot creation failed
- Fixed "toggle" annotation on techniques not having any effect anymore
- Fixed user being able to disable techniques that are set to always be enabled via "enabled" annotation
- Improved code generation for variable initializers for better compile times
- Improved readability of generated code for simple vector swizzles
- Removed cursor from UI screenshots
- Removed unused "SPV_GOOGLE_hlsl_functionality1" extension from generated SPIR-V code
4.5.4
- Added error message when saving the current preset failed
- Added warning message when access to depth buffers is disabled because of network activity
- Added option to move FPS counter to a different corner of the screen
- Added error log messages for Vulkan pipeline creation and memory allocation failures
- Added compiler error when encountering sRGB read/write on a texture which does not use RGBA8 format
- Added device and driver information to UI in Vulkan
- Improved performance by avoiding unnecessary stencil clear operations
- Reduced memory footprint for stencil operations in OpenGL
- Changed setup tool to automatically copy a ReShade.ini dropped next to the tool into the game directory during installation
- Changed caption of main button in setup tool to make user interaction more obvious
- Replaced setup tool configuration file with a common "ReShade Setup.ini"
- Fixed Vulkan support on AMD GPUs
- Fixed crash in DOOM when using Vulkan
- Fixed crash on exit when Vulkan application fails to properly clean up resources
- Fixed Vulkan queue submission synchronization
- Fixed small memory leak in Vulkan
- Fixed flipped channels in HDR Vulkan screenshots
- Fixed ReShade attempting to hook Vulkan devices that are created without the swapchain extension
- Fixed Vulkan dispatch table initialization for command buffers in release mode
- Fixed setup tool crash when all effects are unchecked
- Fixed "SV_VertexID" values in D3D9 when "VertexCount" pass state is greater than 3
- Fixed D3D10/11 depth buffer detection in Guild Wars 2
- Fixed render targets in D3D10/11 having undefined contents on first use
- Fixed rendering to more than two render targets in D3D12
- Fixed input in games that handle input in a child window to the main render window (e.g. Supreme Commander)
- Fixed code editor undo history getting lost after saving and reloading a file
- Fixed opening the same file in code editor after closing it causing nothing to happen
- Fixed global preprocessor definition popup showing cut off sometimes
- Fixed SPIR-V code generation for function calls with sampler arguments
- Fixed SPIR-V code generation for "tex2Dsize" intrinsic overload without mipmap level parameter
- Fixed SPIR-V code generation for array uniforms
- Fixed effect parser hanging when encountering an error inside a namespace
- Fixed effect preprocesor hanging when encountering a single-character recursive macro
- crosire
03 Nov 2019 01:59 - 06 Nov 2019 21:05
4.4 was created by crosire
Changelog
4.4.0:
4.4.1:
4.4.2:
4.4.0:
- Added EXPERIMENTAL support for Vulkan
To use, install with setup tool as usual, but run the game via the batch file it generates.
If game uses a launcher, install ReShade to the launcher instead of the game executable (only for Vulkan)!
<game name>_with_reshade.bat - Added D3D12/Vulkan depth buffer detection (based on work by thalixte)
- Added lots of improvements to D3D9/10/11 depth buffer detection
- Added option to enable/disable aspect ratio heuristics in depth buffer detection
- Added support for saving before and after screenshots of the same frame (thanks to Naomi)
- Added support for "__FILE__" and "__LINE__" preprocessor macros
- Added "BUFFER_COLOR_DEPTH" definition which contains the color bit depth of the frame buffer (e.g. 8 or 10)
- Added "ui_spacing" annotation for spacing before variable widgets in UI
uniform int value1; uniform int value2 < ui_spacing = 2; >; // 2 spaces away from value1 widget uniform int value3 < ui_spacing = 5; >; // 5 spaces away from value2 widget
- Added "ui_category_closed" annotation to change default open state of variable categories
uniform int value4 < ui_category = "Something"; ui_category_closed = true; >;
- Added buttons to edit effect file and show generated code to technique context menu
- Added buttons to show diassembled functions to technique context menu
- Added screenshot support for 10-bit backbuffer formats
- Added "VertexCount" pass state to change number of vertices to draw from default of 3
pass MyPass { VertexCount = 6; VertexShader = SomeVertexShaderWhichCreates2Triangles; ... }
- Added Solarized Dark/Light editor styles
- Added button to skip tutorial on first start
- Added version information to "About" page in UI
- Added highest optimization level flag to HLSL compilation
- Added timeout to update check to avoid stalling startup because of a broken internet connection
- Added error message when texture could not be initialized to UI
- Added option to always use main depth buffer as source in OpenGL
- Added fullscreen preview for textures on statistics page
- Added support for filtering to preset selector in UI
- Added shortcut keys for switching forwards and backwards between presets (thanks to antagonicus)
Pressing one of those keys performs a smooth transition to the next/preview preset file - Added caching for INI files to speed up config/preset loads/saves
- Added option to disable line info generation for shaders:
[GENERAL] NoDebugInfo=1
- Updated setup tool to .NET framework 4.8
- Improved D3D11 performance by removing global locks (now uses a "ID3D11CommandList" hook for state tracking instead)
- Improved D3D12 performance by reusing a single command list
- Improve responsiveness of slider adjustment buttons
- Redesigned statistics page in UI
- Renamed "Direct3D 10+" button in setup tool to "Direct3D 10/11/12"
- Changed default of "ClearRenderTargets" pass state to "false"
- Changed UI toggle key to not open/close UI when editing text
- Changed preset INI check to look for "Techniques" key instead of "TechniqueSorting"
This fixes compatibility with certain older presets - Changed preprocessor definition name input box in UI to filter out spaces
- Changed "ReShade.ini" lookup to first check application directory before falling back to DLL directory
- Changed GUI to be usable while effects are being loaded
- Changed text editor to be read-only when viewing generated code rather than editing a file
- Changed vendor and device ID display to print "Unknown" if the IDs are not known
- Changed keyboard shortcut widget to display "Click to set key shortcut" if none is set
- Changed default number of reserved OpenGL texture names to 512 to fix artifacts in some old games
- Fixed D3D12 synchronization
- Fixed crash in D3D12 if reloading a single effect due to resources being deleted that were still in use
- Fixed texture upload failing in OpenGL if a pixel unpack buffer is set
- Fixed spelling mistake in tutorial text
- Fixed UI artifacts in D3D9/12 and OpenGL
- Fixed application hash (aka the "__APPLICATION__" definition) not working correctly
- Fixed freezing when doing a reload while effects are already loading
- Fixed stutters during effect file loading because of too many threads
- Fixed GLSL code generation for struct fields with underscores in their names
- Fixed postfix operators being translated to wrong HLSL/GLSL code
- Fixed runtime error when evaluating a preprocessor macro with less arguments than it actually takes
- Fixed crash when effect file contains preprocessor constructs that use the macro name in the definition
- Fixed infinite loop constructs in ReShade FX getting translated to wrong code
- Fixed floating point division/modulo by zero on constants not returning the expected results
- Fixed possible redefinition error when shader contains local variable names beginning with an underscore
- Fixed log not containing preprocessor errors
- Fixed unnecessary texture view creation in OpenGL for textures without sRGB format
- Fixed crash if two effects use same texture name but one as reference and one as normal texture
- Fixed parsed strings sometimes containing data from previous tokens
- Fixed text editor line number being overlayed by line highlight box
- Fixed missing resource state transition for custom imgui textures in D3D12
- Fixed compiled effect not listing technique if they reference a function with a compile error
- Fixed wrong runtime recreation failure error message in log even though it succeeded
- Fixed texture binding in "glFramebufferTextureLayer" hooks (thanks to Boulotaur2024)
- Fixed potential infinite recursion in D3D device "QueryInterface" implementation
- Fixed crash in UWP games
- Fixed "Could not create SSL/TLS secure channel" error when downloading shaders in setup tool
- Fixed background opacity of API selection in setup tool on Windows 7
- Removed support for saving settings with screenshot (now can only save preset)
- Removed support for compressed texture formats (they never actually worked, so officially removing them now)
- Removed recommendation text from effect selection dialog in setup tool (since loading is fast now)
- Disabled hooking of D3D software devices (fixes artifacts in games that use Direct2D)
4.4.1:
- Fixed errors/crashes/artifacts in D3D11 games because of a bug introduced in 4.4.0 that caused some texture creation calls to fail (e.g. in ETS2)
- Fixed a potential crash in D3D12
- Changed preview image to stay visible when GUI is not open
- Improved logging for HRESULT codes and redirect arguments
4.4.2:
- Added workaround for D3DCompiler bug that causes wrong code generation with "floor" intrinsic
- Fixed crash in D3D12 games
- Fixed OpenGL screenshots not capturing effects
- Fixed values not being reset to defaults when creating a new preset
- Fixed log lines not being flushed to disk
- Fixed depth buffer detection in games using indirect draw calls (e.g. Assassin's Creed Origins)
- Fixed "__RENDERER__" value in OpenGL
- Fixed "tex2Dfetch" intrinsic in D3D9/OpenGL
- Fixed matrix math code generation for SPIR-V
- Fixed GLSL compile error when an effect uses a reserved name multiple times
- Fixed orientation of fragment coordinates ("VPOS/SV_POSITION") in OpenGL
- moyevka
12 Oct 2019 14:52 - 12 Oct 2019 14:53
Hi all! If the name seems familiar, you've probably seen me hanging out on the ReShade discord before.
I recently wrote a guide on making your own LUTs for ReShade hosted over on the FRAMED wiki . I'm well aware of the existence of the old LUT guide, this guide expands on that. It covers the generation of LUTs using Photoshop, Lightroom or even fully in ReShade itself (well, almost).
It also includes a guide to using and modifying the MultiLUT shader, for more LUT goodness.
It's hosted over on the FRAMED wiki rather than the forums, since it's quite comprehensive and I find a wiki format suits it better. Feel free to browse the rest of the site too!
Thoughts on the guide are welcome. Cheers!
LUTs: The Guide 2 ft. MultiLUT was created by moyevka
Hi all! If the name seems familiar, you've probably seen me hanging out on the ReShade discord before.
I recently wrote a guide on making your own LUTs for ReShade hosted over on the FRAMED wiki . I'm well aware of the existence of the old LUT guide, this guide expands on that. It covers the generation of LUTs using Photoshop, Lightroom or even fully in ReShade itself (well, almost).
It also includes a guide to using and modifying the MultiLUT shader, for more LUT goodness.
It's hosted over on the FRAMED wiki rather than the forums, since it's quite comprehensive and I find a wiki format suits it better. Feel free to browse the rest of the site too!
Thoughts on the guide are welcome. Cheers!