6.1

  • crosire
  • Topic Author
More
1 year 6 months ago - 1 year 5 months ago #1 by crosire 6.1 was created by crosire
Changelog

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

6.1.1:
  • Added reset button for effect preprocessor definitions
  • Added effects state synchronization to built-in effect runtime synchronization add-on
  • Added separate finish button to setup tool
  • Fixed crash in Vulkan
  • Fixed technique/variable toggle keyboard shortcuts not registering in some rare cases
  • Fixed deadlock when enabling effect runtime synchronization
  • Fixed user defined names prepended with underscore clashing with same names without underscore in generated GLSL
  • Fixed "reshade::api::device::get_resource_view_desc" returning invalid description in D3D12 when view was created with defaults
  • Changed "reshade::get_config_value/set_config_value" add-on API to support reading/writing array values
  • Changed save button to not clean up preset when auto save is disabled
  • Changed MSAA depth buffer support to include copying during frame
Last edit: 1 year 5 months ago by crosire. Reason: Added 6.1.1 changelog
The following user(s) said Thank You: CeeJay.dk
The topic has been locked.