ReShade 4.0.1 Has been released

Published by

teaser

ReShade is an advanced, fully generic post-processing injector for games and video software developed by crosire (yes that is written correct). Imagine your favorite game with ambient occlusion, real depth of field effects, color correction and more.



ReShade exposes an automated and generic way to access both frame color and depth information (latter is automatically disabled during multiplayer to prevent exploitation) and all the tools to make it happen.

Crosire spent the last couple of months completly rewriting the ReShade FX compiler from ground up. This new compiler is now fully standalone, blazing fast, has much better error recovery (Got a syntax error in your code somewhere? No problem, it will try and finish compiling anyway.), better support for various code features (array assignments and switch statements work properly now) and paves the future for Vulkan support (it can now not only generate HLSL and GLSL, but also SPIR-V). But that's not all. ReShade got a major UI overhaul to make working with it even more productive. This includes an in-game code editor, texture preview, many changes to variable editing to make it more accessible and lots of new styling options to customize the UI to your likings.

Note: Because of the compiler changes, a very small amount of effects may no longer compile in ReShade 4.0 (if they are using intrinsic functions in constant expressions). These need to be updated by their authors. But all effects in the standard repository do work.

4.0.0:

  • Rewrote ReShade FX compiler from ground up to generate SSA code (way too many changes to list them all)
  • Added #line directives to HLSL/GLSL output for better error messages when HLSL/GLSL compilation fails
  • Added error for array declarations without a size
  • Added error when attempting to cast arrays
  • Added variable name to error messages referring to variables
  • Added context menu to variable widgets with option to reset them to their default value
  • Added option to display boolean values as combo box instead of checkbox (via < ui_type = "combo"; >)
  • Added option to save preset and settings with screenshot
  • Added in-game code editor
  • Added experimental variable editing UI which uses tabs instead of trees (disabled by default, can be enabled in settings)
  • Added progress bar to loading progress on splash bar
  • Added separate FPS and frame time overlay and changed their font to the same as the UI
  • Added radio button widget (via < ui_type = "radio"; ui_items = "Button 1\0Button 2\0...\0"; >)
  • Show techniques belonging to effects that failed to compile in the technique list
  • Updated to latest ImGUI with support for docking
  • Changed effect loading to use multiple threads for initial compilation with the ReShade FX compiler and only compile the generated HLSL/GLSL code for those effects that are enabled
  • Delayed effect loading to the first frame
  • Changed default keyboard shortcut to open the UI to "Home"
  • Changed default color scheme (thanks to CeeJay)
  • Changed drag widget to a slider widget (old one is still available via < ui_type = "drag2"; >)
  • Changed font scaling to actually re-create the font atlas with a different font size instead of scaling the atlas texture
  • Changed setup to use relative search paths by default
  • Changed setup to select Steam installation directory by default if present
  • Create a default preset file on launch if none exists (so no changes are lost if the user forgot to create one)
  • Reworked styling settings
  • Reworked various UI widgets (e.g. search path selection, preprocessor settings, ...)
  • Reworked statistics UI design and added texture preview
  • Improved performance of update loop for special uniform variables (those with a < source = ...;> annotation)
  • Fixed text input not working if raw input is used with legacy keyboard messages disabled
  • Fixed mouse cursor being reset to the window corner on first call when input blocking is active
  • Fixed race condition when accessing input causing ReShade to ignore keyboard strokes sometimes
  • Fixed errors staying on splash screen after reloading shaders
  • Fixed crash when constant folding encounters a divide by zero expression
  • Fixed implicit type conversion rules for functions with multiple parameters
  • Fixed window becoming inactive when global alpha is set to zero
  • Fixed LOD bias for textures with auto-generated mipmaps in D3D9
  • Fixed crash if sampler bindings exceed the input resource slot limit in D3D10/D3D11
  • Removed API specific effect compilers and instead handle everything in standalone ReShade FX compiler
  • Removed support for custom #pragma directives
  • Removed user name filtering from log output
  • Removed support for intrinsic functions in constant expressions from ReShade FX compiler
  • Removed performance mode hint popup (should be obvious enough with the checkbox now)
  • ...


4.0.1:

  • Added option to change the clock format
  • Changed slider widget to be used with < ui_type = "slider"; > instead of < ui_type = "drag"; >
  • Changed "Show HLSL/GLSL" button to toggle the editor window
  • Fixed issues with UI elements disapearing in some OpenGL games
  • Fixed crash when using special keys for toggle keys
  • Fixed ReShade forcing OpenGL contexts to OpenGL 4.5, when 4.3 is enough
  • Fixed shader creation failure on D3D10/11 devices with non-default feature level
  • Fixed using "continue" statement causing the compiler to generate infinite loops
  • Fixed text editor not being cleared when reloading effects
 

ReShade 4.0.1 Has been released


Share this content
Twitter Facebook Reddit WhatsApp Email Print