Features:
- Added input blocking in games using "Get*Key*State", "GetRawInputBuffer", Windows hooks or DirectInput 8 for input
- Added basic HDR10/scRGB sreenshot support using HDR PNG (thanks to Kaldaien)
- Added option to Generic Depth add-on to change draw stats heuristic
- Added button widget for boolean uniform variables (set to true for one frame after pressing the button)
uniform bool my_value < source = "button"; >;
- Added support for 4-component integer texture formats to ReShade FX
texture my_tex { Format = RGBA32I; /* or RGBA32U */ }
sampler<int4> my_sampler { Texture = my_tex; }
- (Add-on support) Added effect permutation creation for different render target dimensions and formats (a single effect runtime instance can now render to different render targets without constantly having to reload)
- (Add-on support) Added "command_list::query_acceleration_structures" and matching event
- (Add-on support) Added "swapchain_desc::sync_interval" to override v-sync state via the "create_swapchain" event
- (Add-on support) Added "effect_runtime::export_current_preset()" to export current preset to another path
- (Add-on support) Added "resize" argument to "init_swapchain" and "destroy_swapchain" events
Bug fixes:
- Fixed Need for Speed: Unbound failing to start
- Fixed screen turning yellow in Penumbra: Overture
- Fixed lines of exactly 512 characters in INI files rolling over to the next line causing data loss
- Fixed duplicated effect definitions when loading from cache
- Fixed technique annotations getting lost on effect reload
- Fixed reset buttons for preprocessor definitions
- Fixed crash after parsing ReShade FX syntax error within namespace
- Fixed shader compile error in D3D9 when pixel size of texture with semantic is referenced
- Fixed ReShade FX texture format verification incorrectly triggering on external textures
- Fixed possible deadlock in Path of Exile 2
- Fixed crash when presentation queue fence creation failed
- Fixed errors with present from compute in Indiana Jones and the Great Circle
- Fixed delayed export hooks being installed as function hooks mistakenly when export module is loaded early (iRacing)
- Fixed incorrect entry point for acceleration structure copying being loaded in Vulkan
- Fixed missing keyboard and mouse messages in Wizardry 8
- Fixed "vkGetPhysicalDeviceToolPropertiesEXT" potentially causing a hang in case of a downstream error
- (Add-on support) Fixed duplicated "init_pipeline" event calls in D3D12
- (Add-on support) Fixed descriptor table handle offsets for "ID3D12Device::CopyDescriptors" events
- (Add-on support) Fixed D3D12 ray tracing pipeline creation skipping over DXIL modules with renamed exports
- (Add-on support) Fixed memory leak when pipeline layout creation fails in D3D12
- (Add-on support) Fixed buffer offset in resource view description during D3D12 "addon_event::init_resource_view" event for acceleration structures
- (Add-on support) Fixed "ADDON_*" definitions being added for disabled add-ons
- (Add-on support) Fixed "clear_depth_stencil_view" event being called by "glClear" even if there is no depth-stencil view bound
- (Add-on support) Fixed OpenGL mipmap generation for some texture formats
Miscellaneous:
- Added "ddraw.dll" as an alternative way to load ReShade (useful in Wizardry 8, since it is loaded before input hooks are created)
- Added macro to include "Before", "After" or "Overlay" term in screenshot file path
- Added batch, powershell and python scripts as screenshot post-command options
- Added "vkGetPhysicalDeviceToolProperties" implementation (Vulkan 1.3 core equivalent to VK_EXT_tooling_info extension)
- Improved French localization
- Changed DXGI factory creation to always upgrade to the highest available interface version
- Changed HLSL code generation to add "u" suffix to unsigned integer literals
- Replaced some buttons opening websites with text hyperlinks
- Fixed unintentional hooking of layered DXGI swapchain created by driver in OpenGL
- Fixed D3D11 warnings about SRV state being reset to zero after binding as UAV
- Removed "0x" prefix from addresses in log
- (Add-on support) Updated imgui to v1.91.8 (add-ons may now use 1.91.8, 1.90.0-4, 1.89.7 or 1.86)
- (Add-on support) Added support for disabling add-ons by file name only
- (Add-on support) Added 3-component texture formats (only really supported in OpenGL)
- (Add-on support) Add support for zero pipeline handle to unbind OpenGL program and vertex array
- (Add-on support) Added workaround for local root signature override and empty D3D12 ray tracing pipeline creation
- (Add-on support) Added support for partial render target view binding in OpenGL
- (Add-on support) Improved object destruction tracking in D3D10/11/12 using "ID3DDestructionNotifier"
- (Add-on support) Changed "*.addonfx" effects to be able to run even when effects are disabled globally
- (Add-on support) Changed collapsed state in add-on list to persist between launches
- (Add-on support) Changed subresource box member types from signed to unsigned
- (Add-on support) Changed private data lookup from linear search to hash table
- (Add-on support) Changed OpenGL program creation to not be altered when relevant add-on events are not registered
- (Add-on support) Changed "device::update_buffer_region" and "device::update_texture_region" to silently ignore nullptr as data
Setup tool:
- Added flag to compatibility list to prevent installation to games where ReShade is banned
- Added protection against installing to the Windows directory
- Changed default of effect files list in setup tool to be unselected
- Changed setup tool to write relative preset path to config file
- Fixed scrolling of effect package list when expanded
- Fixed DLL loading errors when system DLLs like dbghelp.dll were present next to the setup executable
|