Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

dxvk-32bit-2.2-1.3 RPM for x86_64

From OpenSuSE Tumbleweed for x86_64

Name: dxvk-32bit Distribution: openSUSE Tumbleweed
Version: 2.2 Vendor: openSUSE
Release: 1.3 Build date: Mon Oct 9 16:24:53 2023
Group: System/Emulators/PC Build host: i01-ch2a
Size: 8642560 Source RPM: dxvk-2.2-1.3.src.rpm
Packager: https://bugs.opensuse.org
Url: https://github.com/doitsujin/dxvk
Summary: Vulkan-based D3D11 implementation for Linux / Wine
Provides a Vulkan-based implementation of DXGI and D3D11 in order to run 3D applications on Linux using Wine

Provides

Requires

License

zlib-acknowledgement

Changelog

* Wed May 24 2023 Björn Bidar <bjorn.bidar@thaodan.de>
  - Update to 2.2
    * 3D11On12 support
    In order to enable D3D12 support in recent Unity Engine titles such
    as Lego Builder's Journey, this release introduces support for creating D3D11
    devices from a D3D12 device using D3D11On12CreateDevice, as well as
    the basic ID3D11On12Device interface. This is achieved by importing
    the Vulkan device and resource handles from vkd3d-proton into DXVK,
    and otherwise uses DXVK's existing D3D11 implementation.
    A vkd3d-proton build as of HansKristian-Work/vkd3d-proton@26c4fed
    or later is required for this to work.
    * D3D9 Partial Presentation
    DXVK now supports presenting to parts of a window by copying the contents of the backbuffer
    to system memory and then drawing them into the window on the CPU.
    This improves compatibility with game launchers, particularly those
    based on Microsoft's WPF toolkit, and some visual novels.
    It will however come with a noticable performance hit.
    Additionally, overall behaviour of D3D9 swap chains was improved and
    the d3d9.noExplicitFrontBuffer option was removed.
    * Logging changes
    When running on Proton or plain Wine, DXVK will no longer create
    log files by default and instead only write log messages to the console
    using wine-specific functionality, in order to avoid creating unnecessary extra files.
    This matches vkd3d-proton behaviour. Note that log file creation
    can be re-enabled by setting the environment variable DXVK_LOG_PATH to a valid path.
    When filing bug reports, users are encouraged to upload the full Proton log.
    * Warnings about unknown interfaces being queried via QueryInterface
      will only be logged once   in order to avoid growing log files
      indefinitely in some games. (#3231)
    * Fixed a regression when rendering YUY2 or UYUY texture formats.
      This fixes in-game videos in Jade Empire (#3182) and
      Sid Meier's Pirates (#3189) (PR #3342)
    * Fixed an issue wherein threads were not properly destroyed.
    * Fixed Vulkan validation errors caused by incorrect layout tracking
      when enabling feedback loops for a texture.
    * Fixed Vulkan validation errors caused by 0x0 sized clears in D3D9.
    * D3D9 StateBlocks now only allocate memory for the parts that are actually used.
      This fixes Total War: Shogun 2 running out of address space when
      using the D3D9 renderer. (#2703, PR #3248)
    * Improved usage of some VK_EXT_extended_dynamic_state3 features to
      avoid hitting slow paths on some drivers.
    * Improved enumeration of DXGI outputs on systems with multiple GPUs.
      This fixes performance issues with recent RE Engine games (D3D12) on such systems.
    * Significantly reduced memory usage in situations where games create unused D3D11 devices.
    * Battle Fantasia Revised Edition: Locked frame rate to 60 FPS
      to work around game bugs at higher frame rates. (PR #3256)
    * Cold Fear: Fixed missing geometry (#3293, PR #3390)
    * Dawn of Magic 2: Fixed a crash upon start (#3271, PR #3272)
    * DC Universe Online: Fixed a hang after alt-tabbing out and back in. (#3314, PR #3316)
    * Far Cry 2: Work around rendering issues on Intel hardware,
      as well as low performance on all GPUs. (PR #3241)
    * Halo: The Master Chief Collection: Fixed memory leak due to invalid
      query usage by the game (PR #3273)
    * Warhammer 40k: Space Marine: Fixed shadow rendering (#3298, PR #3305)
* Fri May 05 2023 Björn Bidar <bjorn.bidar@thaodan.de>
  - Keep setup_dxvk.sh script that was deleted by upstream.
    For more context see:
    https://github.com/doitsujin/dxvk/commit/64cb1ad208f80b11400eef779e99fec223754098
  - Update to 2.1
    * HDR support
      On systems supporting HDR10 color spaces, HDR can now be
      enabled by setting the environment variable DXVK_HDR=1,
      or by setting the option dxgi.enableHDR = True in the configuration
      file. When using vkd3d-proton 2.8 or newer, this will allow D3D12
      games to detect and use the HDR10 color space if they support it.
      No major Linux desktop environment currently supports HDR. In order
      to use this on Linux, a Gamescope session with --hdr-enabled is required.
      This is currently only supported under AMDGPU and requires kernel patches
      from the josh-hdr-colorimetry branch.
    * Shader compilation improvements
      Use of pipeline libraries was extended to pipelines with tessellation or
      geometry shaders in order to further reduce stutter. Additionally, more features
      of the VK_EXT_extended_dynamic_state3 extension are leveraged to reduce stutter
      in some situations when MSAA is used, provided that the Vulkan driver supports them.
    * Sample rate shading
      For older games that support MSAA, the d3d9.forceSampleRateShading and
      d3d11.forceSampleRateShading options were added to let users enable
      sample rate shading for all shaders. This will have a very high
      impact on GPU-bound performance, but may increase overall image quality
      in certain games that suffer from specular aliasing or shimmering alpha-tested geometry.
    * Improved D3D11 command submission logic in order to make overall performance more consistent,
      and to bring DXVK's behaviour more in line with native D3D11 drivers.
    * Fixed D3D11 reference counting issues around 2D textures. (#3169)
    * Fixed Vulkan validation errors when creating DXGI_FORMAT_A8_UNORM UAVs.
      Note that UAVs of this format may not work as expected.
    * Fixed Vulkan validation errors that would occur when allocating dedicated image memory
      on Nvidia GPUs in some situations.
    * Fixed Vulkan validation errors caused by broken timeline semaphores on 32-bit Proton.
    * Worked around an issue with the Uplay overlay being stuck on screen. (#3146)
    * Worked around a bug in AMD's Windows driver as well as AMDVLK that would
      cause numerous games to crash since DXVK 2.0. (#3172)
    * Fewer threads will be used to perform background optimization of graphics pipeines.
      This may result in a smoother gameplay experience on some systems.
    * Ashes of the Singularity: Fixed performance regression caused by suboptimal descriptor set allocation.
    * Battlefield: Bad Company 2: Fixed flickering (#3078, PR #3079)
    * Cardfight!! Vanguard: Fixed rendering (PR #3068).
    * Gujian 3: Fixed rendering issues on some GPUs. (#1784)
    * Resident Evil 4 HD: Fixed invalid Vulkan usage causing a GPU hang on RADV. (PR #3089)
    * Saints Row: The Third: Fixed a severe performance issue with rain when using the D3D9 renderer.
      (#2473, PR #3158)
    * Sekiro: Shadows Die Twice: Fixed stuttering issues on Nvidia GPUs. (#3179)
    * Sonic Frontiers: Worked around a game bug that would cause shadows to flicker when GPU-bound.
    * Supreme Commander: Forged Alliance: Fixed a crash after loading (#3058, PR #3060)
    * Note: Due to changes to our DXGI implementation, older versions of vkd3d-proton (prior to 2.8)
      will no longer work with this version of DXVK.
* Fri May 05 2023 Björn Bidar <bjorn.bidar@thaodan.de>
  - Fix empty -32bit package, don't include winedxvk in it.
  - Generate package sources using _service so that submodule sources are included too.
    DXVK uses vendored Vulkan headed contained in a submodule.
    Fixes build.
* Mon Mar 06 2023 Marcus Meissner <meissner@suse.com>
  - updated to 2.0
    - Driver compatibility
      A Vulkan 1.3 capable driver and wine version are required to run
      this version of DXVK. See the driver support page for details.
      Many features in this release, especially the shader compilation
      changes detailed below, require the use of modern Vulkan features,
      such as Dynamic Rendering, Extended Dynamic State, and Null
      Descriptors. Due to the significant changes required to make use
      of them, it was no longer practical to maintain and test code paths
      for older drivers which do not support these features.
      In practice, any system capable of running D3D11 and D3D12 games
      using Proton Experimental right now will be able to run DXVK 2.0.
      Note: Third-party Vulkan layers that were not updated for Vulkan 1.3 will no longer work.
      D3D9 changes
    - Memory management improvements
      In order to reduce the likelihood of running out of address space in
      32-bit D3D9 games, DXVK will now use memory-mapped files to store
      shadow copies of textures. This allows us to unmap memory that is
      not being used by the game, thus freeing up significant amounts of
      address space, up to several hundred Megabytes. See PR #2663 for
      implementation details.
      Note: This change does not affect 64-bit games since address space
      is not a concern there. It also does not affect D3D10 or D3D11 since
      resource uploads work differently in those APIs and are much more
      memory efficient.
      Render target feedback loops
      On drivers which support VK_EXT_attachment_feedback_loop_layout,
      reading from an active render target in D3D9 games is now properly
      supported, which previously caused rendering artifacts on newer AMD
      hardware and required driver-level workarounds. This affects a number
      of games, including GTA IV.
      Alpha test improvements
      The D3D9 alpha test implementation was changed to more closely match
      the behaviour of Nvidia's implementation, which fixes inaccuracies
      in various games. The d3d9.alphaTestWiggleRoom option was removed,
      and games that previously required this option should now work
      correctly by default.
      D3D10 changes
      DXVK previously shipped incomplete implementations of d3d10.dll and
      d3d10_1.dll, but has not installed them by default since Version 1.6
      since wine's implementation provides more features that are needed
      for D3D10 games to run, including the D3D10 Effects framework.
      Since our implementation is incomplete and has not been used by Proton
      or Lutris for a very long time, DXVK will no longer ship these DLLs
      starting with this release. The D3D10 API itself is still supported
      via d3d10core.dll.
      D3D11 changes
      Feature support
      DXVK now exposes D3D11 Feature Level 12_1 with the following newly added features:
      Tiled Resources up to Tier 3, provided that the corresponding Vulkan sparse binding and sparse residency features are supported
      Conservative Rasterization up to Tier 3, provided that the corresponding Vulkan conservative rasterization features are supported.
      Rasterizer Ordered Views, provided that the corresponding Vulkan fragment shader interlock features are supported.
      While no games are known to use these features directly in D3D11, some
      games and game launchers rely on feature support being consistent
      between D3D11 and D3D12 in order to allow users to enable D3D12
      in the game options. While our implementation of these feature is
      generally functional, there may be bugs or performance issues in
      case a game does use them.
      Furthermore, DXVK now supports the D3D11_FEATURE_SHADER_CACHE and
      D3D11_FEATURE_D3D11_OPTIONS5 feature queries.
      Note: AMD Vulkan drivers do currently not support fragment shader
      interlock and are limited to feature level 12_0.
      Note: Intel's ANV driver currently does not support the corresponding
      Vulkan features and is therefore limited to feature level 11_1. This
      applies to both DXVK and vkd3d-proton.
      Device contexts
      The implementations of ID3D11DeviceContext were refactored so
      that immediate contexts and deferred contexts no longer use common
      entry points. This is closer to Windows behaviour and may improve
      compatibility to third-party libraries and mods that hook into the
      D3D11 immediate context specifically, and reduces CPU overhead since
      some frequently used code paths are now more specialized for each
      context type.
      State clear and restore methods were optimized to further reduce CPU
      overhead in games that heavily use deferred contexts, e.g. Assassin's
      Creed: Origins, or explicitly call ClearState frequently, e.g. God
      of War.
      Shader compilation changes
      On drivers which support VK_EXT_graphics_pipeline_library, including
      the IndependentInterpolationDecoration feature, Vulkan shaders will
      now be compiled at the time the game loads its D3D shaders, rather
      than at draw time. This reduces or eliminates shader compile stutter
      in many games.
      In games that load their shaders during loading screens or in the
      menu, this can lead to prolonged periods of very high CPU utilization,
      especially on weaker CPUs. For affected games it is recommended to
      wait for shader compilation to finish before starting the game to
      avoid stutter and low performance. Shader compiler activity can be
      monitored with DXVK_HUD=compiler.
      Note: The relevant Vulkan features are currently only supported
      by Nvidia drivers (version 520.56.06 or later). Driver support is
      expected to improve in the future.
      State cache interactions
      This feature largely replaces the state cache. If the given Vulkan
      features are supported, only pipelines that cannot use the pipeline
      library feature (e.g. pipelines using tessellation shaders) will
      be written to and read from the state cache, so newly created state
      cache files will typically only contain a few dozen to a few hundred
      pipelines, as opposed to thousands or tens of thousands. If the
      graphics pipeline library feature is not supported, the state cache
      will be used the same way as it was in older DXVK versions.
      Note: State cache files created with DXVK versions prior to 1.4.3 can no longer be used.
      Note: Despite our efforts, due to the significant changes under
      the hood, there may be issues when using an older state cache file
      under some circumstances. If you experience crashes, please test
      if the game runs with a clean cache file (DXVK_STATE_CACHE=reset)
      before reporting a bug.
      Caveats
      Games which only load their D3D shaders at draw time (e.g. Witcher 3,
      most Unreal Engine games) will still exhibit some stutter, although
      it should still be less severe than without this feature.
      For 32-bit games, the implementation tries to aggressively free
      Vulkan pipelines in order to save memory. This may cause stutter if
      the driver's on-disk shader cache is not working properly.
      On Nvidia drivers, the on-disk shader cache will be significantly
      larger than with previous versions of DXVK. It may be necessary
      to bypass the size limit by setting the environment variable
      __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1, or setting a new limit manually
      via __GL_SHADER_DISK_CACHE_SIZE (in bytes).
      Linux build support
      Work from dxvk-native has been upstreamed in order to facilitate
      native Linux builds of DXVK, which can be used as a drop-in
      replacement to port D3D applications without having to change
      rendering code.
      Note: When porting a D3D11 application, please refer to the Feature
      support and Developer Guidelines pages on the Wiki to avoid hitting
      unsupported or slow code paths in DXVK.
* Wed Jul 13 2022 Marcus Meissner <meissner@suse.com>
  - updated to 1.10.2
    - Implemented non-seamless cube maps for D3D9 using the `VK_EXT_non_seamless_cube_map` extension if supported by the driver
    - FIxed an issue with current versions of the Nvidia Vulkan developer driver not using its on-disk shader cache with DXVK
    - Fixed an issue which would cause the state cache file to not be written properly
    - Fixed an issue where incorrect barriers would be emitted for UAV rendering (#2696)
    - Fixed an issue where the `d3d11.samplerAnisotropy` option would apply to the wrong kind of samplers
    - Fixed potential issues when using state caches that were created on a driver with a different feature set
    - Fixed broken stencil resolves in D3D9
    - Fixed build issues on GCC 12.1
    - Optimized UAV clears in D3D11 to allow drivers to use image compression more frequently
    - Optimized performance of in-memory compression for SPIR-V shader code
    - **Beyond Good and Evil**: Work around missing light shafts (#2680)
    - **Day Z**: Enabled `d3d11.cachedDynamicResources` option to work around performance issues (PR #2709)
    - **Dead Space**: Fixed shadow rendering and added 60 FPS lock to work around game bugs (#2704)
    - **Dirt Rally**: Fixed potential GPU hang due to game bugs in a shader
    - **Godfather**: Fixed crash on systems that don't support 16x MSAA (#2590)
    - **Limbo**: Enable 60 FPS limit to work around game bugs (PR #2566)
    - **Majesty 2**: Work around game bugs causing issues on integrated GPUs and systems with more than 2GB of VRAM (#1542, #PR 2612)
    - **Myst V**: Work around an issue when the word "Radeon" is not part of the device name on AMD GPUs (#2661)
    - **Onechanbara Z2: Chaos**: Fixed particle effects and UI elements not displaying properly (#2701)
    - **Planetary Annihilation: TITANS**: Fixed crash when creating swap chain on a NULL window (PR #2665), as well as a crash due to creating too many internal worker threads (#2670).
    - **Plants vs. Zombies Garden Warfare 2**: Work around crash when the game detects an AMD GPU (PR #2700)
    - **Return of Reckoning**: Work around launcher issues (#2568, PR #2579)
    - **Scrapland Remastered**: Work around black screen issues (#2398, PR #2574)
    - **Small Radios Big Televisions**: Work around black screen issue (PR #2646)
    - **Sonic Adventure 2**: Fixed missing particle effects (#2672, PR #2677)
    - **SpellForce Platinum Edition**: Fixed crash (#2710, PR #2711)
    - **Supreme Commander**: Fixed missing particle effects (#2638, PR #2682, PR #2684)
    - **Star Wars: The Force Unleashed II**: Fixed some particle effects not rencering correctly (PR #2584)
    - **Star Wars: The Old Republic**: Fixed rendering issues (#2676, PR #2681)
  - updated to 1.10.1
    Features
    Implemented initial support for shared resources (PR #2516). This
    fixes video playback in a number of Koei Tecmo games (Atelier series,
    Nioh 2), as well as the D3D11-based UI in the Windows version of Black
    Mesa. The required wine patches are currently only available in Proton
    Experimental. This feature will not be supported on Windows systems.
    This feature is still experimental and has not been thoroughly tested
    on all graphics drivers, so issues are to be expected. Currently,
    only basic 2D texture sharing between D3D9 and D3D11 is supported
    when using DXVK for both APIs. API features that are currently not
    supported include:
    - IDXGIKeyedMutex. Documentation is very poor and it's not clear how an implementation is supposed to behave.
    - Resource sharing with D3D12 applications under vkd3d-proton. This may be added in the future.
    - Resource sharing with Vulkan applications.
    Note: The Black Mesa UI flickers heavily when the game is not
    GPU-bound. This also happens on Windows to some degree and is a
    game bug.
    Bug fixes and Improvements
    - Added an environment variable DXVK_ENABLE_NVAPI to bypass the vendor ID override. Setting it to 1 behaves exactly the same as setting dxvk.nvapiHack = False in the config file, but may allow for better integration into Lutris or the Proton launch script. (#2544)
    - Improved shader code generation when local arrays are used. This may improve performance on Nvidia drivers in some D3D11 games.
    - Fixed shader code generation when switch-case fallthrough is used in Shader Model 4.0 (#2556). Current FXC versions no longer generate such code.
    - Potentially improved performance when rendering to DXGI_FORMAT_R11G11B10_FLOAT images that can also be used with unordered access views.
    - Fixed various D3D9 issues related to texture uploads (#2559, #2541, #2535).
    - Assassin's Creed 3, Black Flag: Enabled d3d11.cachedDynamicResources = a to work around severe performance issues.
    - Frostpunk: Enabled d3d11.cachedDynamicResources = c to work around low CPU-bound performance.
    - God of War: Fixed some issues that started with game patch 1.0.9:
    - Extremely inconsistent frame pacing when the game detects an AMD GPU, dxgi.maxFrameLatency = 1 is now set by default to work around this issue.
    - Heavy flickering of some lights. Apparently this was also fixed in the game in patch 1.0.11.
    - GTA: San Andreas: Fixed UI rendering issues (#2560)
    - Rayman Origins: Fixed rendering issues (#2545)
* Sat Mar 05 2022 Marcus Meissner <meissner@suse.com>
  - updated to 1.10
    [#]# Performance improvements
    - Reduced unnecessary worker thread synchronization around resource readbacks for both D3D11 and D3D9. This can significantly increase CPU-bound performance in games like **Assassin's Creed: Origins** and other titles built on the same engine, with smaller improvements seen in **Elex II**, **God of War**, **GTA IV** and others.
    - When using [D3D11_MAP_WRITE](https://docs.microsoft.com/en-us/windows/win32/api/d3d11/ne-d3d11-d3d11_map) on a staging resource that's currently being read by the GPU, DXVK will now attempt to create a copy of that resource in order to avoid GPU synchronization. This improves performance in **Quantum Break** and potentially other games. This behaviour can be tweaked using the `d3d11.maxImplicitDiscardSize` option.
    - Optimized [UpdateSubresource](https://docs.microsoft.com/en-us/windows/win32/api/d3d11/nf-d3d11-id3d11devicecontext-updatesubresource) for small constant buffer updates. This further improves performance in **God of War** and potentially other games.
    - Improved the way resource uploads and staging buffers are handled in D3D11. This may reduce memory usage and CPU overhead in some - Added more information to the HUD that can be useful for troubleshooting performance issues: GPU synchronizations per frame, worker thread synchronizations per frame, and pipeline barrier count.
    - GPU synchronization, when necessary, no longer uses busy-waiting, which may reduce power consumption on portable devices in some games.
    [#]# Bug fixes and Improvements
    - Added a `D3D11On12CreateDevice` stub so applications using this don't immediately crash (PR #2278).
    * *Note** that supporting D3D11on12 is currently not viable.
    - Version numbers for Intel's Windows driver should now be reported properly.
    * *Note** that using DXVK on this driver is highly discouraged and will likely not work.
    - **ArmA 2**: Fixed texture-related issues (PR #2477).
    - **Black Mesa**: Fixed
    - **Resident Evil 0**, **5**, **6**, **Resident Evil: Revelations 2**: Improved performance (PR #2466).
    - **Total War: Warhammer III**: Significantly improved GPU-bound performance on setups with a dedicated GPU.
    [#]# Per-game workarounds
    Replaced the previous `d3d11.apitraceMode` option with  `d3d11.cachedDynamicResources`, which provides a more granular way to specify resource types to allocate in cached system memory. Refer to the example `dxvk.conf` for details. This change was not made for the equivalent D3D9 option yet.
    Normally, [D3D11_USAGE_DYNAMIC](https://docs.microsoft.com/en-us/windows/win32/api/d3d11/ne-d3d11-d3d11_usage) resources are expected to be write-only from the CPU and read-only from the GPU, but despite this, some games perform CPU-side reads on the mapped memory, which can cause severe performance degradation since those reads would have to go over PCI-E, or at least uncached write-combined memory. This is especially problematic on systems with Resizeable BAR and can cause issues even on Windows D3D11 drivers.
    Games that will use this option by default include **Age of Empires 2: Definitive Edition** (#2491), **Anno 1800**, **Final Fantasy XIV**, **Nier Replicant**, **The Evil Within** (PR #2522), and all games that previously had `d3d11.apitraceMode` enabled by default.
  - updated to 1.9.4
    Bug fixes and Improvements:
    - Fixed an issue that would cause VRAM to not be utilized on RBAR-enabled Nvidia GPUs if the `dxvk.shrinkNvidiaHvvHeap`option is enabled (#2438).
    - Enabled strict D3D9 float emulation by default on future versions of RADV. This may improve both accuracy and GPU-bound performance (PR #2448)..
    - Improved memory allocation behaviour. This may reduce memory usage especially in games that create multiple processes or D3D devices.
    - Removed obsolete options to disable OpenVR support.
    - **God of War**: Enabled performance optimizations and DLSS support. *Note that these changes are already included in Proton Experimental.*
* Tue Jan 11 2022 Marcus Meissner <meissner@suse.com>
  - updated to 1.9.3
    - DLSS should now work in supported games in combination with [dxvk-nvapi](https://github.com/jp7677/dxvk-nvapi).
    - Optimized D3D9 shader constants by relying on `VK_EXT_robustness2` and removed the old app options for games using software vertex processing. (#2282)
    - Added an option for more accurate emulation of D3D9 floating point behaviour and enabled that by default for a bunch of games. (#2294, #2359). This fixes issues in **Red Orchestra 2**, **Dark Souls 2** (original version), **Dog Fight 1942**, **Bayonetta**, **Rayman Origins**, **Guilty Gear Xrd** and **Richard Burns Rally**.
    - Fixed a DXGI issue which would sometimes cause games to fail to enter fullscreen mode on some displays that do not support low rates across all resolutions (#2395).
    - **Black Mesa**: Fixed a regression with shadows. (#2317)
    - **Crysis 3 Remastered**: Worked around poor performance. (#2339)
    - **Euro Truck Simulator**: Fixed a shading issue resulting in black geometry (#2312)
    - **Injustice Gods Among Us**: Fixed missing characters on the character selection screen. (#2332)
    - **Rocksmith 2014**: Fixed white screen on startup. (#2383)
    - **Spliter Cell: Chaos Theory**: Fixed brightness with the shader model 3 option. (#2340)
    - **Sim City 2013**: Fixed rendering.
    - **The Guild 3**: Fixed artifacts in overview map.
* Mon Sep 20 2021 Marcus Meissner <meissner@suse.com>
  - updated to 1.9.2
    - Reduced overall CPU overhead in D3D9.
    - Fixed various failures in wine's D3D9 tests.
    - Fixed various issues when the `d3d9.evictManagedTexturesOnUnlock` option is enabled.
    - Fixed various issues when the `d3d11.relaxedBarriers` option is enabled.
    - **Call of Cthulhu**: Fixed reflection rendering (#2248)
    - **Crysis 3**, **Homefront The Revolution**: Worked around poor performance (#2256) (#2241)
    - **GODS**: Fixed gamma curve (#2250)
    - **Total War Medieval 2**: Fixed black lines on the world map (#2258) and settings text (#2247)
      The game still crashes when loading battles due to running out of address space.
    - **Fantasy Grounds**: Fix incorrect rendering (#2251)
    - **Need For Speed Heat**: Fixed ground textures rendering incorrectly (#1764).
    - **Paranormal Files**: Fix black screen (#2192)
    - **Pathfinder: Wrath of the Rightous**: Fixed GPU hang in loading screen.
      Note that the game itself has further issues loading certain parts
      of the game, which do not appear to be related to wine or DXVK in
      any way.
    - **Payday**: Fix flickering reflections (#2259)
    - **Shin Megami Tensei 3**: Fixed hang when entering save room (#2161)
    - **Sine Mora EX**: Added 60 FPS lock (#2261)
  - updated to 1.9.1
    - Fixed a number of performance and stability issues introduced with the D3D9 locking rewrite in 1.9 (#2142, #2149, #2150, #2164, #2168).
    - Rewrote the way staging textures are handled in D3D11. This can reduce memory usage and the number of image copies necessary to move data between the CPU and GPU, and fixes severe performance issues in Roblox on Nvidia GPUs.
    - Removed some workarounds for very old Mesa versions (19.0 and older).
    - Reimplemented locking primitives based on Windows SRW locks. This may be more efficient compared to the winpthreads implementation in mingw builds.
    - Earth Defense Force 5: Work around performance issues caused by the game frequently turning vertical synchronization on and off between frames (#2127)
    - Far Cry 1: Spoof Nvidia GPU in order to enable higher-quality water rendering.
    - Far Cry 5 and other Dunia Engine games: Fixed various issues due to uninitialized memory (PR #2137).
    - GTA IV: Fixed broken app profile that would break the game on Nvidia GPUs.
    - Risen 3: Fixed crash on Nvidia GPUs (#2154).
    - World of Final Fantasy: Forcibly disable MSAA to work around game bugs. Note that this should not impact visual quality since the game only uses MSAA for full-screen passes where it has no effect (#1216, #2136).
* Tue Jun 22 2021 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Build only on x86*
* Sat Jun 19 2021 Marcus Meissner <meissner@suse.com>
  - updated to 1.9
    [#]# Features
    - Implemented basic support for various subsampled YUV texture formats such as NV12, which is used for video playback in some games, as well as basic support for `ID3D11VideoProcessor` APIs
    . This is needed for videos in **Nier Replicant** to play back (#2048), and may also be required for **Contra: Rogue Corps** (#1676). Note that Nier videos currently do not work with Proton
    for other reasons.
    - Implemented Conservative Rasterization for supported GPUs, which allows enabling the Nvidia ShadowLibs option in **Final Fantasy XV** and possibly similar options in other games.
    - Reduced presentation latency by up to one frame under some circumstances. This may help with games that are limited by vertical synchronization, DXGI frame latency settings, or external frame limiters that operate on `vkAcquireNextImageKHR` (PR #2075).
    - Added a frame rate limiter. This is mostly intended as a workaround for games that do not work correctly at high frame rates, but can also be controlled with an environment variable. Check the README for detais.
    [#]# Device selection
    Software-only Vulkan implementations such as Lavapipe are no longer reported to the application as long as there is a Vulkan-capable GPU present on the system. This should fix issues where games try using Lavapipe over a proper driver on some setups with recent Mesa versions and then crash due to hitting an unsupported texture format.
    Lavapipe can now be used with DXVK by manually setting the `VK_ICD_FILENAMES` environment variable. While some of DXVK's feature requirements have been lifted in order to allow it to run, note that limitations of this driver may still cause some games to crash or render incorrectly, while others (such as The Witcher 3) were tested successfully.
    [#]# Bug fixes and Improvements
    - Improved texture and buffer uploads in D3D9.
    - Fixed the Origin overlay not showing up when using DXVK's DXGI implementation (#1996).
    - Disabled Wine Gecko/Mono installers showing up when using install script.
    - Disabled a workaround to reduce the amount of random crashes on Nvidia drivers since the underlying driver issue was fixed in the 465.xx releases (#1963), which may improve performance in some games.
    - Fixed precision issues in shaders that do not have the `refactoringAllowed` flag set.
    - Fixed some potential issues around image clears that could lead to artifacting or broken rendering.
    - Fixed an issue where games with upper-case file extensions may create duplicate logs or cache files (#2079).
    - Fixed monitor layout issues when restoring display modes on multi-monitor setup (#2064).
    - Fixed a bug in D3D9 where child windows did not have their positions converted relative to their parents (#1958).
    - Removed workarounds specific to RADV with the LLVM shader compiler. Please use the ACO backend instead (default since Mesa 20.2).
    - Removed `d3d11.enableRtOutputNanFixup` workaround, and enabled that behaviour by default for older RADV versions (prior to Mesa 20.3).
    - Further reduced the size of state cache files. State caches from previous DXVK versions will be converted automatically.
    - Debugging symbols now work in GDB with wine-reload (4kb file alignment)
    - Misc. vector/matrix math fixes and optimizations in D3D9.
    - **Atelier Mysterious Trilogy Deluxe Pack**, **Dal Segno** and **Nights of Azure**: Added the usual white screen workaround (#2035, #2022, #2044).
    - **Days Gone**: Implemented missing DXGI frame statistics functions in order to fix very low frame rates (#2065).
    - **Demon Stone**: Work around the game breaking at >60fps (#2103).
    - **Dragon Quest Builder 2**: Fixed an issue where the game would immediately run out of system memory (PR #1995).
    - **Final Fantasy XIII**, **Spec Ops: The Line**: Fixed a bug with some postprocessing effects on NVIDIA.
    - **GTA IV re-release**: Work around incorrect VRAM amounts being shown when nvapi and atidlxx libraries are not present as it assumes all GPUs to be Intel IGPs with unified memory in that case.
    - **Halo 2**: Fixed fog rendering issues (#2059).
    - **Kohan II**: Fixed out-of-memory crash on startup (#2030).
    - **Nier Replicant**: Enabled 60 FPS limit to work around issues with the game running too fast, and enforced full-rate vertical synchronization in order to work around related issues with the game sometimes being stuck at weird frame rates.
    Note that AMD RX 5000 and 6000 series GPUs may need to be put into high performance mode manually in order to fix performance issues caused by aggressive power management.
    - **Second Sight**: Fixed missing UI (#2056).
    - **TrackMania Forever**: Fixed rendering issues introduced in DXVK 1.8.
* Tue Mar 02 2021 Marcus Meissner <meissner@suse.com>
  - updated to 1.8.1
    [#]# Bug fixes and Improvements
    - Fixed a regression that would cause a number of D3D9 games to crash when changing the resolution or during startup.
    - Improved performance in many D3D9 games when using MSAA on RADV.
    - Improved presentation logic for MSAA swap chains, which are common in older D3D9 games.
    - **Mafia II**: Work around shadows being broken when the game thinks it's running on an AMD GPU. (#1294)
    - **Warhammer Online**: Work around the game trying to use unsupported image formats. (#1296)
* Fri Feb 19 2021 Marcus Meissner <meissner@suse.com>
  - updated to 1.8
    [#]# Bug Fixes and Improvements
    - Fixed some build system warnings with newer Meson versions.
    - CPU-based Vulkan implementations such as Lavapipe will now always be enumerated last. This should avoid issues on systems without a dedicated GPU where games could potentially default to a CPU rasterizer.
    - Optimized image layout transitions, which may improve performance on Intel GPUs in some games.
    - D3D9: Improved performance of texture uploads and occlusion queries in some cases.
    - D3D9: Fixed an issue where supported back buffer formats would be reported incorrectly.
    - DXGI: Enabled multi-monitor support. This requires a relatively recent Wine version with XRandR 1.4 support to work correctly.
    - D3D11: Fixed a number of reference counting issues that could potentially lead to stability issues (PR #1887, PR ##1888).
    - D3D11: Improved correctness of NaN handling in shaders with `VK_KHR_shader_float_controls`, and removed most app workarounds setting `d3d11.enableRtOutputNanFixup`.
    - Enabled `d3d11.enableRtOutputNanFixup` by default on older RADV versions.
    - Enabled `d3d11.invariantPosition` option by default to fix common Z-fighting issues, especially on RDNA2 GPUs.
    - **Atelier Ryza 2**: Added workaround for video playback breaking D3D11 rendering, like in other games of the series.
    - **Battle Engine Aquila**: Fixed broken textures (PR #1759).
    - **Dark Messiah of Might & Magic**: Work around out-of-memory issues on startup.
    - **Everquest**: Work around performance issues.
    - **F1 2018/2020**: Work around broken compute shaders causing artifacts on Mesa drivers, similar to F1 2019 (#1897).
    - **Hitman 3**: Work around AMDAGS issues on AMD GPUs similar to Hitman 2 (PR #1909).
    - **Nioh 2**: Work around black screen issues.
    - **Tomb Raider Legend**: Work around performance issues (#1685).
* Wed Dec 02 2020 Marcus Meissner <meissner@suse.com>
  - updated to 1.7.3
    - Added support for new DXGI interfaces introduced in Windows 10 version 1809.
    - Added an option to scale the HUD on high-DPI displays. Refer to the README for details. (#771)
    - Changed generated D3D11 shader code to allow drivers to optimize away texture operations in case no texture is bound.
    - Fixed some D3D9 games crashing on RADV due to invalid shader code.
    - Fixed Vulkan validation errors when the HUD is active.
    - Optimized away redundant render target clears in some games to potentially increase performance.
    - Indirect draw batching can now work with arbitrary strides. This may slightly reduce the draw call count in Trine 4.
    - **EverQuest 2** Fixed broken cloth rendering on Nvidia. (#1832)
    - **Trine 4**: Fixed rendering issues that would occur on some Nvidia GPUs as well as on RADV. (#1816)
  - disable stack-clash, as the PE mode of it is buggy. (bsc#1179804)
* Thu Oct 08 2020 Marcus Meissner <meissner@suse.com>
  - updated to 1.7.2
    - Fixed a major D3D9 regression that would cause crashes in many games.
    - Fixed D3D9 crashes on AMDVLK due to invalid Vulkan API usage (#1742).
    - Work around stack overflows in some 32-bit D3D9 games.
    - Added workarounds for rendering issues on AMD drivers in some Unity Engine games.
    - Work around Unicode support on Windows being garbage (PR #1761).
    - Log file creation can now be disabled by setting `DXVK_LOG_PATH=none`, but logs will still be printed to stderr (#1743).
    - **Age of Empires II HD**: Fixed video playback (#1726).
    - **Baldur's Gate 3**: Fixed crash after character selection screen in D3D11 mode.
    - **Final Fantasy XIV**: Improved stability on recent Nvidia drivers.
    - **Just Cause 3**: Work around a game bug causing flickering terrain on RADV (#1553).
    - **Marvel's Avengers**: Fixed spurious crashes due to invalid resource copies.
    - **Need for Speed Heat**: Fixed some Vulkan validation errors.
    - **PGA TOUR 2K21**: Fixed Vulkan validation errors and potential crashes.
    - **Trails in the Sky SC**: Fixed fog rendering (#1771).
* Sat Sep 05 2020 Marcus Meissner <meissner@suse.com>
  - updated to 1.7.1
  - switch to using release tarballs, removed git service
  - fixes and Improvements
    - VK_EXT_4444_formats is now used on supported drivers to resolve potential issues with sampler border colors on Intel hardware.
    - VK_EXT_extended_dynamic_state is now used on supported drivers to implement out-of-bounds vertex buffer access behaviour correctly.
    - Minor performance improvements.
    - Implemented NV12 video format support for D3D9. This should make the GeForce Now app usable with DXVK.
    - Implemented missing shader instruction for D3D9 to fix shadow rendering in a number of games.
    - Anarchy Online: Fixed an out-of-memory error.
    - Metro Exodus: Added missing DXGI entry points required to run the game.
    - Observation: Work around a game bug causing rendering issues on RADV.
    - Resident Evil 7: Disabled relaxedBarriers option again due to rendering issues.
    - Serious Sam 2 and others: Fixed incorrect water reflections.
    - SpellForce 2: Work around black water ripples.
    - Timeshift: Fixed shadows
    - TrackMania: Fixed water and other rendering issues.
    - Work around performance issues in Darksiders: Warmastered Edition (#1719) and Monster Hunter World on AMD and recent Nvidia drivers.
    - Work around Z-fighting issues in Borderlands 3, Halo, Halo CE, Mafia III: Definitive Edition, Terminator: Resistance.
  - Compatibility notes
    VK_EXT_transform_feedback is now a hard requirement for D3D10 and
    D3D11. This extension is supported by all Nvidia and Mesa drivers
    released in early 2019 or later, as well as recent AMDVLK releases
    and the proprietary AMD driver.
* Thu Apr 09 2020 pousaduarte@gmail.com
  - Update to version 1.5.4:
    * [meta] Release 1.5.4
    * [d3d9] Return D3D_OK in CreateTexture even if AUTOGENMIPMAP flag is stripped
    * [d3d9] Check correct sampler bitfield when applying/capturing sampler state
    * [util] Disable OpenVR for Raft
    * [d3d9] Simplify dirty check for shader constants
    * [d3d9] Store copy of shader metadata in constant set
    * [dxso] Fix GCC warning for an unused variable
    * [d3d9] Fix GCC warnings for unsigned->signed comparisons
    * [d3d9] Don't arbitrarily set fog scale to 0
    * [d3d9] Validate blit regions are in range
    * [d3d9] Error on StretchRect when not D3DPOOL_DEFAULT
    * [dxso] Initialize vPos in shaders if we have pixel fog
    * [dxvk] Skip over adapters not supporting Vulkan 1.1
    * [util] Include ostream in util_rc_ptr.h
    * [dxso] Apply projection before bumpmapping in TexBem
    * [meta] Release 1.5.3
    * [d3d9] Unbind fragment shader for ProcessVertices
    * [dxso] Handle writemask in TexKill op
    * Revert "[util] Disable float emulation for Hat in Time"
    * [d3d11] Re-introduce client API HUD item
    * [d3d11] Introduce COM interface to set and get API version
    * [d3d9] Re-introduce client API HUD item
    * [hud] Add parameter to allow placing HUD items
    * [hud] Don't initialize client API HUD item by default
    * [dxvk] Don't oversubscribe memory heaps on UMA devices
    * [dxvk] Move UMA check to backend
    * [d3d9] Enable depth bounds feature, if supported
    * [util] Disable float emulation for Hat in Time
    * [d3d9] Use spec constants for bool constants
    * [d3d9] Fix GetTextureStageState using unmapped types
    * [dxso] Initialize vPos value at the start of the shader
    * [dxso] Count max constants after we pull out pre-defines
    * [util] Unify Risen 1/2/3 app profiles
    * [util] Add more exe names to Gothic 3 app profile
    * [d3d9] Allow StretchRect BC -> BC format without stretch
    * [test] Add test for StretchRect DXT1 -> DXT1
    * [meta] Release 1.5.2
    * [d3d9] Don't try to blit to compressed images
    * [d3d9] Don't mark D3DUSAGE_AUTOGENMIPMAP as renderable
    * [util] Disable d3d9.allowDoNotWait for RTHDRIBL
    * [d3d9] Implement d3d9.allowDoNotWait
    * [d3d9] Unmark resources as dirty if they get discarded
    * [d3d9] Don't block on GetRenderTargetData
    * [util] Disable supportDFFormats for Gothic 3
    * [d3d9] Don't check for sRGB formats when retrieving back buffer view
    * [d3d9] Rotate swap chain back buffers
    * [d3d9] Retrieve back buffer view from the D3D9Surface
    * [dxvk] Remove image renaming
    * [d3d9] Fix some off-by-one TSS types enum values
    * [d3d9] Fix texture stage index in stateblocks
    * [util] Add simple [] operator to our bitset
    * [d3d9] Remap texture stage state types onto our own enum
    * [d3d9] Remove unnecessary loops for some stateblocks applications
    * [util] Add app profile for Entropia Universe
    * [d3d11] Introduce d3d11.invariantPosition option
    * [dxbc] Declare vertex positions as invariant
    * [d3d9] Fix opSelect condition vector size
    * [util] Spoof AMD for Skyrim (nvapi)
    * [d3d11] Implicitly begin scoped queries in End if necessary
    * [d3d9] Make unbound textures return (0, 0, 0, 1) (fixed func)
    * [dxso] Make unbound textures return (0, 0, 0, 1)
    * [util] Enable d3d9.deferSurfaceCreation for a ton of weeb games
    * [d3d9] Remove unused variable
    * [d3d9] Create front buffer
    * [d3d9] Don't create sRGB views for non-sRGB compatible textures
    * [d3d9] Return specific image view from GetSampleView
    * [d3d9] Don't pass format mapping to D3D9CommonTexture
    * [dxvk] Don't enable VK_KHR_descriptor_update_template
    * [dxvk] Don't enable VK_KHR_shader_draw_parameters
    * [dxvk] Don't enable VK_KHR_maintenance1, VK_KHR_maintenance2
    * [dxvk] Don't enable VK_KHR_dedicated_allocation, VK_KHR_get_memory_requirements2
    * [dxvk] Don't enable VK_KHR_get_physical_device_properties2
    * [dxbc] Don't enable SPV_KHR_shader_draw_parameters
    * [d3d9] Don't enable DrawParameters capability
    * Readability cleanup
    * Use verbose file operations during installation
    * Add installation support for pure 64-bit Wine (non WoW64)
    * [d3d9] Implement GetFrontBufferData (currently with first backbuffer)
    * [d3d9] Add AreFormatsSimilar helper
    * [d3d9] Don't create views if we are a null resource
    * [dxvk] don't try to fall back to Vulkan 1.0
    * [d3d9] Create multiple back buffers for GetBackBuffer API
    * [d3d9] Synchronize with presentation in D3D9SwapChainEx::Reset
    * [dxvk] Implement image swapping
    * [dxvk] Introduce DxvkPhysicalImage
    * [dxvk] Register image views with the parent image
    * [dxvk] Use small_vector to store image view format compatibility list
    * [dxvk] Factor out image view creation
    * [util] Add small_vector helper
    * [dxgi] Don't check window validity in IDXGISwapchain::GetFullscreenState
    * [d3d9] Don't mark for hazards if we aren't rendering to mip 0
    * [d3d9] Keep subresource views in subresources, defer creation until needed
    * [d3d11] Lock immediate context when submitting presentation commands
    * [dxso] Use m's id for bump matrix in TexBem
    * [d3d9] Implement d3d9.forceSwapchainMSAA
    * [d3d9] Defer dialog mode swapchain recreation decision to Present
    * [d3d9] Remove redundant logging from SetDialogBoxMode
    * [meta] Release 1.5.1
    * [d3d9] Remove unused variable from D3D9DeviceEx::Clear
    * [dxvk] Tweak number of pipeline compiler threads
    * [d3d9] Add GetSurfaceExtent helper
    * [d3d9] Respect mip != 0 for Clear fastpath
    * [d3d9] Respect specific mip size for implicit viewport in SetRenderTarget
    * [d3d11] Move shader stage and buffer slot calc to inside lambda
    * [d3d9] Scale depth bias value based on current format's `r` value
    * [d3d9] Set depth bias values separately, optimize redundant rasterizer state changes
    * [dxvk] Fix loading vkAcquireFullScreenExclusiveModeEXT etc.
    * [util] Improve Spinlock implementation
    * [d3d9] Ensure D3DDISPLAYMODEEX we use to call the Ex funcs has its size set correctly
    * [d3d9] Hook up GetAdapterDisplayMode to resp. adapter func
    * [d3d9] Return current display mode in GetAdapterDisplayModeEx rather than last mode
    * [d3d9] Don't re-set dialogbox mode on swapchain Reset
    * [d3d9] Remove incorrect error returns SetDialogBoxMode
    * [dxgi] Ignore sync interval if PRESENT_TEST is used
    * [d3d11] Increment transfer command counter when initializing UAV counter
    * [util] Enable d3d9.forceSamplerTypeSpecConstants for Halo [CE]
    * [dxso] Implement d3d9.forceSamplerTypeSpecConstants
    * [util] Improve ticket lock implementation
    * [meta] Happy New Year 🎉💃🎊
    * [d3d9] Fix crash when trying to present with a currently invalid presenter
    * [dxso] Negate reflection in TexM3x3VSpec
    * [dxso] Normalize eyeRay and normal before reflection in TexM3x3Spec
    * [dxso] Only track co-issue parent opcode rather than the full context
    * [dxso] Don't emit a co-issue for CNDs parented to a CND
    * [d3d9] Enable bounds testing for D3DPOOL_SYSTEMMEM buffers
    * [dxso] Perform saturate after bitshift modifier
    * [dxso] Track and prioritize co-issued CNDs above their parent ops
    * [dxso] Keep track of the current instruction index in a decoding context
    * [dxso] Parse co-issue instruction modifier
    * [d3d9] Use VK_FORMAT_D24_UNORM_S8_UINT for D3DFMT_DF24
    * [d3d9] Use VK_FORMAT_D24_UNORM_S8_UINT for D3DFMT_D24X8
    * [d3d9] Make ChangeReportedMemory actually atomic
    * [util] Add get to bitset
    * [d3d9] Simplify SetViewport
    * [d3d9] Avoid rebinding scissor rects if the same one is re-set
    * [d3d9] Avoid rebinding viewports if the same one is re-set
    * [d3d9] Still rebind viewport/scissor when setting the same RT
    * [d3d9] Add operator overloads for RECT
    * [d3d9] Add operator overloads for D3DVIEWPORT9
    * Report gpu vendor as Nvidia for Star Wars Battlefront II
    * [spirv] Allow specifying the SPIR-V version explicitly
    * [d3d9] Avoid unnecessary state block constant bits when not SWVPing
    * [d3d9] Use new bitset helper + tzcnt for stateblocks
    * [util] Add bitset helper
    * [d3d9] Move auto depth stencil creation to after swapchain creation
    * [d3d9] Remove initial device reset outside of constructor
    * [d3d9] Log unavailable backbuffer format if encountered when resetting swapchain
    * [d3d9] Fix return value for invalid backbuffer formats
    * [hud] Respect dxvk.hud configuration option again
    * [util] Handle undefined ratios in simplest ratio helper
    * [d3d9] Move capture struct and enum to stateblock header
    * [meta] Release 1.5
    * [util] Defer D3D9 surface creation for Atelier Ryza
    * [meta] Add D3D9 specifics to the README
    * [d3d9] Implement Direct3D9 Frontend (#1275)
    * [hud] Allocate vertex buffer in host-visible device memory if possible
    * [hud] Clean up HUD rendering
    * [hud] Don't create uniform buffer
    * [hud] Don't use vertex shader for scaling
    * [d3d11] Don't present if the presenter has no swap chain.
    * [vulkan] Don't create a swap chain if the window size is 0
    * [d3d11] Update HUD on CS thread
    * [hud] Enable manual sRGB conversion for non-sRGB swap chains
    * [hud] Don't average the draw call count
    * [hud] Reduce update frequency of draw call display
    * [hud] Reduce update frequency of queue submission display
    * [hud] Add colorful labels
    * [hud] Fix letter spacing
    * [dxvk] Remove unused memory stat counters
    * [hud] Remove legacy code
    * [hud] Implement compiler activity display as a HUD item
    * [hud] Implement GPU load display as a HUD item
    * [hud] Implement memory stats display as a HUD item
    * [hud] Implement pipeline stat display as a HUD item
    * [hud] Implement draw call stats display as a HUD item
    * [hud] Implement queue submission counter as a HUD item
    * [hud] Implement frame time graph as a HUD item
    * [hud] Implement FPS display as a HUD item
    * [hud] Implement Vulkan device info as a HUD item
    * [hud] Implement client API info as a HUD item
    * [hud] Implement DXVK version info as a HUD item
    * [hud] Add new HUD item abstraction
    * [hud] Don't pass DXVK context around in HUD modules
    * [dxvk] Add method to retrieve per-heap memory stats
    * [util] Spoof Nvidia cards for Crysis 3
    * [dxvk] Separate gfx resource hazard checking and barrier emission
    * [meta] Support frog builds
    * [spirv] Implement constbReplicant
    * [spirv] Implement constvec4b32
    * [spirv] Implement opReflect
    * [spirv] Implement opExp
    * [spirv] Implement opInverse, opNormalize and opLength
    * [spirv] Implement opTranspose
    * [spirv] Implement constfReplicant helper
    * [dxvk] Expose ability to retrieve type from DxvkShaderKey
    * [dxvk] Add helper to get size of memory/image in bytes
    * [dxvk] Improve DxvkImageView::handle()
    * [dxvk] Add support for implicit samplers
    * [util] Implement simplest ratio helper
    * [util] Add alignDown helper
    * [util] Implement lzcnt
    * [util] Add countof helper
    * [util] Implement a clamped version of ComObject, for D3D9
    * [util] Add GetPrivateRefCount helper
    * [util] Implement fclamp for fp special cases
    * [util] Implement some basic vector and matrix math utils
    * [util] Mark clamp & align as constexpr
    * [util] Implement bit cast.
    * [dxgi] Add fake implementation of DxgiFactory::EnumWarpAdapter
    * [d3d11] Determine exclusive fullscreen mode based on swap chain flags
    * [vulkan] Support exclusive fullscreen control in presenter
    * [vulkan] Add feature bit for exclusive fullscreen control
    * [dxvk] Enable VK_EXT_full_screen_exclusive if available
    * [d3d11] Silence some errors about invalid API usage on deferred contexts
    * Adding `compiler` to `DXVK_HUD`
    * Revert "[dxvk] Don't clear bind mask for unbound UBOs and samplers"
    * [meta] Release 1.4.6
    * [meta] Update Vulkan headers
    * [d3d11] Remove d3d11.strictDivision option
    * [util] Enable d3d11.enableRtOutputNanFixup for FFXIV
    * [dxbc] Implement workaround to replace NaN render target outputs by zero
    * [spirv] Implement opIsNan
    * [dxvk] Fix multiple inclusion of dxvk_platform_exts.h
    * [dxvk] Disable VK_EXT_conditional_rendering
    * [dxvk] Don't return a value from updateShaderResources
    * [dxvk] Bind descriptor sets at descriptor update time
    * [dxbc] Emit a spec constant for uniform buffers
    * [dxvk] Don't clear bind mask for unbound UBOs and samplers
    * [meta] Recommend using new validation layers
    * [util] Make Fence and Win32Fence final
    * [d3d11] Synchronize presentation when destroying swap chain
    * [dxvk] Use waitForIdle when destroying DXVK device
    * [meta] Update default config file
    * [dxgi] Don't allow changing the FRAME_LATENCY_WAITABLE_OBJECT flag
    * [dxgi] Implement IDXGISwapChain2::GetFrameLatencyWaitableObject
    * [d3d11] Create frame latency event for swap chain
    * [util] Implement fence capable of signaling win32 events
    * [dxgi] Implement IDXGISwapChain2::SetFrameLatency
    * [util] Reimplement Signal
    * [d3d11] Move frame latency handling into D3D11SwapChain
    * [dxvk] Fix include awfulness
    * [util] Fix winelib build
    * [util] Wide character conversion changes
    * [d3d11] Hook up platform-specific clock
    * [dxvk] Hook up platform-specific clock
    * [util] Add platform-specific clock implementation
    * [d3d11] Actually fix subresources discarded by DiscardView1
    * [d3d11] Ignore D3D11_COPY_DISCARD
    * [d3d11] Overhaul DiscardResource and DiscardView implementations
    * [dxvk] Sort buffer slices before returning them to the buffer
    * [dxvk] Enable shader-based depth-stencil copies for AMDVLK
    * [meta] Release 1.4.5
    * [dxvk] Enable asynchronous presentation on all hardware
    * [dxvk] Fix synchronization around vkDeviceWaitIdle
    * [dxvk] Fix handling of undefined shader inputs
    * [dxvk] Implement pass to eliminate undefined shader input variables
    * [spirv] Add method to retrieve literal string from instruction
    * [spirv] Add method to erase data from code buffer
    * [spirv] Add method to allocate new ID from code buffer.
    * [dxvk] Avoid some unnecessary barriers around render target clears
    * [d3d11] Zero-initialize UAV counters
    * [dxvk] Always align texel buffers to at least 16 bytes
    * [d3d11] Also fix reset counter memory order for deferred context queries
    * [util] Remove traces of the allowMapFlagNoWait option
    * [d3d11] Remove allowMapFlagNoWait option
    * [d3d11] Fix memory order for query reset counter
    * [d3d11] Submit stalling event queries before flushing
    * [dxvk] Always align index buffer slices to 256 Bytes
    * [dxvk] Store shader capability information in separate set of flags
    * [util] Disable strict DC mode for MGSV again
    * [util] Add app profile for Metal Gear Solid 5
    * [dxvk] Enable option to disable OpenVR integration
    * [dxvk] Move extension provider list to DxvkInstance
    * [dxvk] Always align vertex buffer slices to 256 bytes
    * [d3d11] Fix uninitialized DSV flags
    * [dxvk] Remove option to disable transfer queue
    * [dxvk] Remove ability to query instance from adapter
    * [d3d11] Don't query DXVK instance from adapter
    * [dxvk] Pass DXVK instance to DXVK device directly, not through the adapter
    * [dxgi] Query DXVK instance from DXGI factory, not the adapter
    * [dxvk] Document wonky DxvkAdapter ref count behaviour
    * [d3d11] Hold reference to DxvkInstance
    * [dxvk] Use static variables for extension provider instances
    * [dxvk] Implement extension provider system
    * [build] Simplify and correct errors in options handling
    * [build] Demote no frontends/tests to a warning
    * [d3d11] 'a' is not a very good name for a variable
    * [d3d11] Don't synchronize with CS thread on present
    * [dxvk] Let device know that async presentation is enabled
    * [d3d11] Do not synchronize with CS thread in GetData
    * [d3d11] Move query state tracking to immediate context implementation
    * [d3d11] Move common Begin/End implementation to immediate context
    * [d3d11] Track used queries in deferred contexts and command lists
    * [d3d11] Only execute Begin for scoped queries
    * [util] Fix != and == operator for private/public COM pointers
    * [d3d11] Only add storage buffer usage flag to constant buffers if needed
    * [d3d11] Move handling of constantBufferRangeCheck option to D3D11Options
    * [d3d11] Remove useless members from D3D11DeferredContextMapEntry
    * [dxgi] Use 64-bit integers for refresh rate matching math
    * [dxbc] Remove old constant buffer range check
    * [dxbc] Don't emit a spec constant for uniform buffers
    * [dxbc] Use SSBOs for dynamically indexed constant buffers if needed
    * [dxbc] Parse dynamically indexed flag for constant buffers
    * [meta] Release 1.4.4
    * [util] Enable constant buffer range check for Saints Row games
    * Revert "[d3d11] Fix ref counting for D3D11CommandList"
    * Revert "[d3d11] Recycle command lists from deferred contexts"
    * [dxvk] Validate image layouts in render pass formats read from cache
    * [dxvk] Write correct depth-stencil attachment layout to state cache
    * [dxvk] Fix uninitialized depth attachment reference
    * [dxbc] Always set geometry shader invocation count
    * [dxbc] Always allocate at least one input array element
    * [d3d11] Adjust buffer memory flags if apitrace is attached
    * [dxvk] Pause transform feedback on buffer updates
    * [dxvk] Fix bogus xfb buffer update check
    * [d3d11] Remove D3D11 counter buffer class
    * [d3d11] Allocate predicate buffer per query
    * [d3d11] Allocate xfb counter buffer per buffer
    * [d3d11] Allocate counter buffer per UAV
    * [dxvk] Handle xfb barriers in commitGraphicsBarriers
    * [dxvk] Replace buffer in updateBuffer even outside of render passes
    * [dxvk] Lazily allocate slices of small buffers
    * [dxvk] Don't lock swap lock if not necessary
    * [dxvk] Pad buffers more tightly
    * [dxvk] Force-update draw buffer for graphics pipeline barrier checks
    * [dxvk] Consider indirect draw buffer in graphics pipeline barriers
    * [dxvk] Consider vertex/index buffers in graphics pipeline barriers
    * [dxvk] Introduce checkGfxImageBarrier
    * [dxvk] Introduce checkGfxBufferBarrier
    * [dxvk] Move finalizeDraw into commitGraphicsState
    * [d3d11] Recycle command lists from deferred contexts
    * [util] Add virtual destructor to NoWrapper
    * [d3d11] Fix ref counting for D3D11CommandList
    * [d3d11] Fix incorrect AddRef return value
    * [d3d11] Don't set HOST pipeline stage and access flags for resources
    * [dxbc] Declare length of shader input array late
    * [spirv] Add 'late' constants
    * [dxbc] Extend scalar constants to vectors if required
    * [dxbc] Assume vec4 type for i/o vars not declared in signature
    * [dxbc] Declare temp registers on demand
    * [d3d11] Validate shader module capabilities
    * [d3d11] Refactor shader module creation
    * [util] Enable constant buffer range check for Titan Quest
    * [dxgi] Remove useless d3d10.enable option
    * [meta] Release 1.4.3
    * [dxbc] Swap OpSelect arguments for Ne/Dne, don't use OpLogicalNot
    * [dxvk] Implement more compact state cache data format (v8)
    * [util] Add missing != operator to Sha1Hash
    * [dxvk] Support component mappings in blitter
    * [dxvk] Add some component mapping helpers
    * [dxvk] Implement framebuffer-based blit
    * [dxvk] Add class for framebuffer-based blits
    * [dxvk] Support arbitrary source texture coordinates in blitter
    * [dxvk] Support multisampled destinations in blitter
    * [dxvk] Support both linear and nearest samplers in blitter
    * [dxvk] Factor out mip gen classes and rename them to DxvkMetaBlit*
    * [d3d11] Remove obsolete DefaultDesc methods from state classes
    * [d3d11] Fix ref counting for state objects bound to a context
    * [d3d11] Fix immediate context reference counting
    * [d3d11] Don't subclass state objects from ComObject
    * [d3d11] Allow choosing type wrapper for D3D11DeviceChild base class
    * [util] Don't allow multiple inheritance for COM objects
    * [d3d11] Don't get private references for state objects
    * [d3d11] Fix reference counting for state objects
    * [d3d11] Return error if no desc is provided for Create*State methods
    * [d3d11] Don't sync CS thread if resource to map is already in use
    * [d3d11] Don't use a state object for default blend state
    * [d3d11] Don't use a state object for default depth-stencil state
    * [d3d11] Don't use a state object for default rasterizer state
    * [d3d11] Introduce ResetState and use it for ClearState
    * [dxvk] Don't store sampler description in sampler objects
    * [dxvk] Fix buffer usage flags in commitGraphicsBarriers
    * [dxvk] Don't rely on binding mask in commitGraphicsBarriers
    * [dxvk] Don't clear binding masks in update*Pipeline
    * [dxvk] Remove outdated comment
    * [dxvk] Add function to insert framebuffer read-back barriers
    * [dxvk] Add dependency flag parameter to emitMemoryBarrier
    * [dxvk] Remove spill parameter from bindRenderTargets
    * [d3d11] Don't spill render pass when rebinding render targets
    * [dxvk] Implement accurate barrier tracking for draws with side effects
    * [dxvk] Introduce HasStorageDescriptors to signify pipeline side effects
    * [dxvk] Remove incorrect framebuffer-space barriers
    * [dxbc] Fix sample positions
    * [d3d11] Add more rigid validation for buffer creation
    * [d3d11] Change ValidateBufferProperties to NormalizeBufferProperties
    * [d3d10] Fix reported bind flags for D3D10 resources
    * [d3d11] Validate texture array size
    * [d3d11] Initialize feature level to zero in D3D11CreateDevice
    * [dxvk] Don't use dynamic storage buffers
    * [dxvk] Optimize invalidateBuffer for use with uniform buffers
    * [dxvk] Inline freeBufferSlice implementation
    * [dxvk] Dirty framebuffer in beginRecording
    * [dxvk] Use float format for sampled unbound image views
    * [dxvk] Fix tessellation validation
    * [dxvk] Validate graphics state in commitGraphicsState
    * [dxvk] Validate compute state in commitComputePipelines
    * [dxvk] Move descriptor set updates to updateShaderResources
    * [dxvk] Move dynamic descriptor offset array to stack
    * [dxvk] Use memcmp replacement for pipeline state lookup
    * [dxvk] Implement state cache v6 -> v7 conversion
    * [dxvk] Increase maximum spec constant count to 12
    * [dxvk] Move compute pipeline state to dxvk_graphics_state.h
    * [dxvk] Use new struct for specialization constant info
    * [dxvk] Use packed blend state
    * [dxvk] Use packed depth-stencil state
    * [dxvk] Use packed multisample state
    * [dxvk] Use packed rasterizer state
    * [dxvk] Use packed input layout state
    * [dxvk] Use packed input assembly state
    * [dxvk] Move DxvkGraphicsPipelineStateInfo to new file
    * [dxvk] Prepare for pipeline state changes and bump cache format to v7
    * [dxvk] Don't use alignas(16) for DxvkMetaClearArgs members
    * [dxvk] Add missing {} to border color list
    * [util] Fix Sha1 dword extraction
    * [d3d10] Remove unused copies of device ptr in D3D10 wrappers
    * [dxgi] Initialize size of DEVMODEW structure
    * [dxvk] Don't redundantly clear unused vertex strides to zero
    * [meta] Release 1.4.2
    * [util] Report Nvidia GPUs for Modern Warfare Remastered
    * [d3d11] Add missing break; in CreateSurface
    * [util] Move GetAdapterLUID out of DXGI internals
    * [d3d11] Implement CreateSurface for D3D11DXGIDevice
    * [dxgi] Generate adapter LUIDs if Vulkan does not provide them
    * [dxgi] Fix some IDXGIAdapter return codes
    * [dxgi] Handle invalid arguments passed to Present1
    * [dxgi] Fix SetFullscreenState behaviour with invalid usage
    * [dxgi] Fix GetContainingOutput and GetFullscreenState output pointer
    * [d3d11] Add support for DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE
    * [d3d11] Fix return code on swap chain creation failure
    * [d3d11] Use private reference to D3D11 device in D3D11SwapChain
    * [dxgi] Fix some return codes in DxgiSwapChain
    * [d3d11] Fix error handling in SetMaximumFrameLatency
    * [dxgi] Fix QueryVideoMemoryInfo return values
    * [dxgi] Fix CheckInterfaceSupport UMD version writeback
    * [dxgi] Fix GetDisplayModeList1 output for DXGI_FORMAT_UNKNOWN
    * [dxgi] Fix GetDisplayModeList behaviour with a zero mode count
    * [dxgi] Fix CheckInterfaceSupport for IDXGIDevice
    * [dxvk] Implement context-local lookup cache for pipeline objects
    * [dxvk] Move shader set hash/eq functions into respective structs
    * [dxvk] Use new shader lookup hash in pipeline manager
    * [dxvk] Expose key-based lookup hash in DxvkShader
    * [dxvk] Add methods to retrieve shaders from pipeline
    * [dxbc] Fix NaN handling in not-equal comparison
    * [dxvk] Re-introduce state check for updateFramebuffer
    * [meta] Release 1.4.1
    * [dxvk] Spoof Nvidia GPU for HITMAN 2
    * [dxvk] Eliminate some redundant state checks
    * [dxvk] Introduce finalizeDraw
    * [d3d11] Add a comment explaining ID3D11Predicate/ID3D11Query hack
    * [d3d11] Fix GetPredication
    * Revert "[dxbc] Always decorate SV_POSITION as invariant"
    * [dxbc] Always decorate SV_POSITION as invariant
    * [dxvk] Store context flags as a 32-bit integer
    * [d3d10] Add some null pointer checks when dealing with resources
    * [d3d10] Fix some awkward formatting
    * [d3d11] Handle D3D_PRIMITIVE_TOPOLOGY_UNDEFINED correctly
    * [dxvk] Validate primitive topology in pipeline state
    * [dbxc] Actually fix callc implementation
    * [dxbc] Implement label, call and callc instructions
    * [d3d11] Return device lost errors in Present if necessary
    * [d3d11] Implement GetDeviceRemovedReason
    * [dxvk] Handle device lost errors on command submission
    * [d3d11] Fix CheckFeatureSupport formatting and return code
    * Retrieve the function pointer once (#1198)
    * [dxvk] Explicitly compare resource use count to zero
    * [meta] Release 1.4
    * [dxvk] Bump state cache version to v6
    * [dxvk] Apply spec constants to compute shaders as well
    * [dxvk] Only time pipeline compile times if requested
    * [dxvk] Check if xfb buffers have actually changed on binding
    * [dxvk] Use separate counters for read/write resource usage
    * [d3d11] Disable DO_NOT_WAIT for Overwatch
    * [d3d11] Implement IDXGIDevice4
    * [dxgi] Implement IDXGISwapChain4
    * [dxgi] Implement IDXGIOutput5
    * [dxgi] Implement IDXGIFactory5
    * [dxgi] Include DXGI 1.5 headers
    * [util] Update comment for FIFA 19+ workaround (#1197)
    * Revert "[d3d11] Don't create linearly tiled compressed images"
    * [d3d11] Implement GetDC / ReleaseDC
    * [d3d11] Implement GDI surface
    * [util] Add helpers for GDI/DDI interop
    * [d3d11] Enable allowMapFlagNoWait by default
    * [dxvk] Only wait for writes when mapping with D3D11_MAP_READ
    * [dxvk] Implement read-write tracking for resources
    * [dxvk] Implement read/write tracking in lifetime tracker
    * [d3d11] Write to image memory directly in InitHostVisibleTexture
    * [d3d11] Use VK_IMAGE_LAYOUT_PREINITIALIZED for mapped images
    * [dxvk] Add initial layout to initImage
    * [dxvk] Add initial layout to image create info
    * [util] Enable FIFA 19 workaround for FIFA 20 as well
    * [d3d11] Implement DiscardView1
    * [dxgi] Implement IDXGIVkInteropAdapter for IDXGIAdapter
    * [dxgi] Define IDXGIVkInteropAdapter interface
    * [dxgi] Rename IDXGIVkAdapter -> IDXGIDXVKAdapter
    * [d3d11] Only use mapped buffer for images if bind flags are non-zero
    * [util] Enable allowMapFlagNoWait for Warhammer II
    * [d3d11] Report unified memory if all heaps are device-local
    * [d3d11] Enable D3D11.3 MapOnDefaultTextures feature
    * [d3d11] Implement ReadFromSubresource and WriteToSubresource
    * [d3d11] Allow pMappedResource to be null when mapping images
    * [d3d11] Implement D3D11.2 MapOnDefaultBuffers feature
    * [d3d11] Move GetMemoryFlagsForUsage into D3D11Buffer
    * [d3d11] Query format support in d3d11-formats test
    * [d3d11] Report MapOnDefaultTextures feature as unsupported
    * [dxvk] Replicate R component of border color for depth compare samplers (#1194)
    * [d3d11] Implement ID3D11Device5
    * [d3d11] Implement ID3D11Device4
    * [d3d11] Implement D3D11.4 feature queries
    * [d3d11] Include D3D11.4 headers
    * [d3d11] Implement ID3D11Device3
    * [d3d11] Implement ID3D11Query1
    * [d3d11] Implement ID3D11UnorderedAccessView1
    * [d3d11] Implement ID3D11ShaderResourceView1
    * [d3d11] Implement ID3D11RenderTargetView1
    * [d3d11] Implement ID3D11Texture2D1 and ID3D11Texture3D1
    * [d3d11] Implement ID3D11RasterizerState2
    * [d3d11] Implement ID3D11DeviceContext4
    * [d3d11] Implement ID3D11DeviceContext3
    * [dxbc] Implement stencil ref export from fragment shaders
    * [d3d11] Use shaderStorageImageReadWithoutFormat for typed UAV loads
    * [d3d11] Add definitions for feature levels 12_0 and 12_1
    * [d3d11] Implement D3D11.3 feature queries
    * [d3d11] Include D3D11.3 headers
    * [dxbc] Implement MSAD4 instruction
    * [d3d11] Implement GetResourceTiling
    * [d3d11] Implement ID3D11Device2
    * [d3d11] Implement ID3D11DeviceContext2
    * [d3d11] Implement D3D11.2 feature queries
    * [d3d11] Include D3D11.2 headers
    * [d3d11] Prevent log spam from repeated Get/SetResourceMinLOD calls
    * [d3d11] Implement missing D3D11_FEATURE_D3D9_OPTIONS feature query
    * [d3d11] Optimize viewport updates if there is only one single viewport
    * [d3d11] Add range check for scissors and make failing it unlikely
    * [metæ] Release 1.3.4
    * [util] Enable d3d11.allowMapFlagNoWait for Control
    * [d3d11] Don't create linearly tiled compressed images
    * Work around build failure with winegcc/clang. (#1184)
    * [meta] Work around wine 4.15 build failure
    * [meta] Use -std=c++17
    * [d3d11] Fix incorrect AddRef -> Release
    * [meta] Release 1.3.3
    * [d3d11] Rename some hazard tracking methods for clarity
    * [d3d11] Check for conflicts withing RTV and UAV lists upon binding them
    * [d3d11] Resolve pipeline hazards when binding render targets
    * [d3d11] Resolve pipeline hazards when binding compute shader UAVs
    * [d3d11] Add check whether a viewed resource has a given bind flag
    * Update README (#1174)
    * [d3d11] Filter redundant OMSetRenderTargets calls
    * [d3d11] Remove outdated comment
    * [d3d11] Check for shader resource view hazards
    * [d3d11] Add state to track potentially hazardous bound SRVs
    * [d3d11] Add bound compute shader UAV mask
    * [d3d11] Add common view info struct to all view types
    * [d3d11] Remove templated SetUnorderedAccessViews
    * [d3d11] Don't use .at()
    * [dxvk] Add function to find set bits in binding mask
    * [dxvk] Add function to set bind mask bit to a given value
    * [build] Check if --add-stdcall-alias and --enable-stdcall-fixup is supported before using it.
    * [dxvk] Explicitly include unordered_map in dxvk_renderpass.h
    * [util] Use R string literals for app compat regexes
    * [util] Use regular expressions on full exe path to match app profiles
    * [util] Add method to retrieve full exe path
    * [dxvk] Implement depth-stencil resolve
    * [dxvk] Support depth-stencil resolve using VK_KHR_depth_stencil_resolve
    * [dxvk] Support shader-based depth-stencil resolve
    * [dxvk] Add meta shaders for depth-stencil resolve
    * [dxvk] Make device properties accessible from the device
    * [dxvk] Enable VK_KHR_depth_stencil_resolve if available
    * [dxvk] Enable VK_KHR_create_renderpass2 if available
    * [util] Set d3d11.dcSingleUseMode=False for SteamVR perf test
    * [d3d11] Update resources mapped on deferred contexts in Map()
    * [util] Fix compiling with clang/clang-cl
    * Revert "[dxvk] Use vkCmdUpdateBuffer to clear tiny buffers"
    * [d3d11] Recreate swap chain immediately after synchronous present fails
    * [meta] Release 1.3.2
    * [d3d11] Remove d3d11.asyncPresent option
    * [dxvk] Implement asynchronous presentation option in the backend
    * [dxvk] Move some code to where it makes more sense
    * [d3d11] Fix incorrect tracking of mapped image subresources
    * Revert "[d3d11] Return error when mapping an already mapped image"
    * [dxvk] Avoid redundant descriptor set updates when binding buffers (v2)
    * [dxvk] Add config option to enable the HUD
    * [dxvk] Don't allow common objects to be reference-counted
    * [dxvk] Use DxvkObjects to create and pass around common objects
    * [dxvk] Add class that bundles objects shared between device and context
    * [dxvk] Pass DxvkDevice to DxvkRenderPassPool constructor
    * [dxvk] Pass DxvkDevice to DxvkEventPool constructor
    * [dxvk] Pass DxvkDevice to DxvkMetaClearObjects constructor
    * [dxvk] Pass DxvkDevice to DxvkMetaPackObjects constructor
    * [util] Add helper for lazy initialization
    * [dxvk] Check render pass before pipeline state during pipeline lookup
    * [meta] Remove old issue template
    * Update issue templates
    * [dxvk] Refactor the way render passes to pipeline compiler methods
    * [dxvk] Refactor render pass objects to not use reference counting
    * [dxvk] Introduce compilePipeline method to Dxvk*Pipeline classes
    * [dxvk] Introduce DxvkComputePipelineInstance
    * [dxvk] Rename compilePipeline -> createPipeline
    * [dxbc] Only use atomic append/consume optimization in compute shaders
    * [dxvk] Fix partial clears for mismatched framebuffer attachment sizes
    * [dxvk] Don't duplicate geometry shader system value outputs
    * [dxvk] Don't use reference counting for pipeline objects
    * [dxvk] Use shader key structs directly for pipeline lookups
    * [dxvk] Use shader key structs to store shaders in DxvkPipeline objects
    * [dxvk] Rename Dxvk*PipelineKey -> Dxvk*PipelineShaders
    * [dxvk] Disable resource tracking for DxvkPipeline objects
    * [d3d11] Don't allow the creation of buffers with a size of zero
* Thu Jan 09 2020 pousaduarte@gmail.com
  - Update to version 1.5.1:
    * [meta] Release 1.5.1
    * [d3d9] Remove unused variable from D3D9DeviceEx::Clear
    * [dxvk] Tweak number of pipeline compiler threads
    * [d3d9] Add GetSurfaceExtent helper
    * [d3d9] Respect mip != 0 for Clear fastpath
    * [d3d9] Respect specific mip size for implicit viewport in SetRenderTarget
    * [d3d11] Move shader stage and buffer slot calc to inside lambda
    * [d3d9] Scale depth bias value based on current format's `r` value
    * [d3d9] Set depth bias values separately, optimize redundant rasterizer state changes
    * [dxvk] Fix loading vkAcquireFullScreenExclusiveModeEXT etc.
    * [util] Improve Spinlock implementation
    * [d3d9] Ensure D3DDISPLAYMODEEX we use to call the Ex funcs has its size set correctly
    * [d3d9] Hook up GetAdapterDisplayMode to resp. adapter func
    * [d3d9] Return current display mode in GetAdapterDisplayModeEx rather than last mode
    * [d3d9] Don't re-set dialogbox mode on swapchain Reset
    * [d3d9] Remove incorrect error returns SetDialogBoxMode
    * [dxgi] Ignore sync interval if PRESENT_TEST is used
    * [d3d11] Increment transfer command counter when initializing UAV counter
    * [util] Enable d3d9.forceSamplerTypeSpecConstants for Halo [CE]
    * [dxso] Implement d3d9.forceSamplerTypeSpecConstants
    * [util] Improve ticket lock implementation
    * [meta] Happy New Year 🎉💃🎊
    * [d3d9] Fix crash when trying to present with a currently invalid presenter
    * [dxso] Negate reflection in TexM3x3VSpec
    * [dxso] Normalize eyeRay and normal before reflection in TexM3x3Spec
    * [dxso] Only track co-issue parent opcode rather than the full context
    * [dxso] Don't emit a co-issue for CNDs parented to a CND
    * [d3d9] Enable bounds testing for D3DPOOL_SYSTEMMEM buffers
    * [dxso] Perform saturate after bitshift modifier
    * [dxso] Track and prioritize co-issued CNDs above their parent ops
    * [dxso] Keep track of the current instruction index in a decoding context
    * [dxso] Parse co-issue instruction modifier
    * [d3d9] Use VK_FORMAT_D24_UNORM_S8_UINT for D3DFMT_DF24
    * [d3d9] Use VK_FORMAT_D24_UNORM_S8_UINT for D3DFMT_D24X8
    * [d3d9] Make ChangeReportedMemory actually atomic
    * [util] Add get to bitset
    * [d3d9] Simplify SetViewport
    * [d3d9] Avoid rebinding scissor rects if the same one is re-set
    * [d3d9] Avoid rebinding viewports if the same one is re-set
    * [d3d9] Still rebind viewport/scissor when setting the same RT
    * [d3d9] Add operator overloads for RECT
    * [d3d9] Add operator overloads for D3DVIEWPORT9
    * Report gpu vendor as Nvidia for Star Wars Battlefront II
    * [spirv] Allow specifying the SPIR-V version explicitly
    * [d3d9] Avoid unnecessary state block constant bits when not SWVPing
    * [d3d9] Use new bitset helper + tzcnt for stateblocks
    * [util] Add bitset helper
    * [d3d9] Move auto depth stencil creation to after swapchain creation
    * [d3d9] Remove initial device reset outside of constructor
    * [d3d9] Log unavailable backbuffer format if encountered when resetting swapchain
    * [d3d9] Fix return value for invalid backbuffer formats
    * [hud] Respect dxvk.hud configuration option again
    * [util] Handle undefined ratios in simplest ratio helper
    * [d3d9] Move capture struct and enum to stateblock header
    * [meta] Release 1.5
    * [util] Defer D3D9 surface creation for Atelier Ryza
    * [meta] Add D3D9 specifics to the README
    * [d3d9] Implement Direct3D9 Frontend (#1275)
    * [hud] Allocate vertex buffer in host-visible device memory if possible
    * [hud] Clean up HUD rendering
    * [hud] Don't create uniform buffer
    * [hud] Don't use vertex shader for scaling
    * [d3d11] Don't present if the presenter has no swap chain.
    * [vulkan] Don't create a swap chain if the window size is 0
    * [d3d11] Update HUD on CS thread
    * [hud] Enable manual sRGB conversion for non-sRGB swap chains
    * [hud] Don't average the draw call count
    * [hud] Reduce update frequency of draw call display
    * [hud] Reduce update frequency of queue submission display
    * [hud] Add colorful labels
    * [hud] Fix letter spacing
    * [dxvk] Remove unused memory stat counters
    * [hud] Remove legacy code
    * [hud] Implement compiler activity display as a HUD item
    * [hud] Implement GPU load display as a HUD item
    * [hud] Implement memory stats display as a HUD item
    * [hud] Implement pipeline stat display as a HUD item
    * [hud] Implement draw call stats display as a HUD item
    * [hud] Implement queue submission counter as a HUD item
    * [hud] Implement frame time graph as a HUD item
    * [hud] Implement FPS display as a HUD item
    * [hud] Implement Vulkan device info as a HUD item
    * [hud] Implement client API info as a HUD item
    * [hud] Implement DXVK version info as a HUD item
    * [hud] Add new HUD item abstraction
    * [hud] Don't pass DXVK context around in HUD modules
    * [dxvk] Add method to retrieve per-heap memory stats
    * [util] Spoof Nvidia cards for Crysis 3
    * [dxvk] Separate gfx resource hazard checking and barrier emission
    * [meta] Support frog builds
    * [spirv] Implement constbReplicant
    * [spirv] Implement constvec4b32
    * [spirv] Implement opReflect
    * [spirv] Implement opExp
    * [spirv] Implement opInverse, opNormalize and opLength
    * [spirv] Implement opTranspose
    * [spirv] Implement constfReplicant helper
    * [dxvk] Expose ability to retrieve type from DxvkShaderKey
    * [dxvk] Add helper to get size of memory/image in bytes
    * [dxvk] Improve DxvkImageView::handle()
    * [dxvk] Add support for implicit samplers
    * [util] Implement simplest ratio helper
    * [util] Add alignDown helper
    * [util] Implement lzcnt
    * [util] Add countof helper
    * [util] Implement a clamped version of ComObject, for D3D9
    * [util] Add GetPrivateRefCount helper
    * [util] Implement fclamp for fp special cases
    * [util] Implement some basic vector and matrix math utils
    * [util] Mark clamp & align as constexpr
    * [util] Implement bit cast.
    * [dxgi] Add fake implementation of DxgiFactory::EnumWarpAdapter
    * [d3d11] Determine exclusive fullscreen mode based on swap chain flags
    * [vulkan] Support exclusive fullscreen control in presenter
    * [vulkan] Add feature bit for exclusive fullscreen control
    * [dxvk] Enable VK_EXT_full_screen_exclusive if available
    * [d3d11] Silence some errors about invalid API usage on deferred contexts
    * Adding `compiler` to `DXVK_HUD`
    * Revert "[dxvk] Don't clear bind mask for unbound UBOs and samplers"
    * [meta] Release 1.4.6
    * [meta] Update Vulkan headers
    * [d3d11] Remove d3d11.strictDivision option
    * [util] Enable d3d11.enableRtOutputNanFixup for FFXIV
    * [dxbc] Implement workaround to replace NaN render target outputs by zero
    * [spirv] Implement opIsNan
    * [dxvk] Fix multiple inclusion of dxvk_platform_exts.h
    * [dxvk] Disable VK_EXT_conditional_rendering
    * [dxvk] Don't return a value from updateShaderResources
    * [dxvk] Bind descriptor sets at descriptor update time
    * [dxbc] Emit a spec constant for uniform buffers
    * [dxvk] Don't clear bind mask for unbound UBOs and samplers
    * [meta] Recommend using new validation layers
    * [util] Make Fence and Win32Fence final
    * [d3d11] Synchronize presentation when destroying swap chain
    * [dxvk] Use waitForIdle when destroying DXVK device
    * [meta] Update default config file
    * [dxgi] Don't allow changing the FRAME_LATENCY_WAITABLE_OBJECT flag
    * [dxgi] Implement IDXGISwapChain2::GetFrameLatencyWaitableObject
    * [d3d11] Create frame latency event for swap chain
    * [util] Implement fence capable of signaling win32 events
    * [dxgi] Implement IDXGISwapChain2::SetFrameLatency
    * [util] Reimplement Signal
    * [d3d11] Move frame latency handling into D3D11SwapChain
    * [dxvk] Fix include awfulness
    * [util] Fix winelib build
    * [util] Wide character conversion changes
    * [d3d11] Hook up platform-specific clock
    * [dxvk] Hook up platform-specific clock
    * [util] Add platform-specific clock implementation
    * [d3d11] Actually fix subresources discarded by DiscardView1
    * [d3d11] Ignore D3D11_COPY_DISCARD
    * [d3d11] Overhaul DiscardResource and DiscardView implementations
    * [dxvk] Sort buffer slices before returning them to the buffer
    * [dxvk] Enable shader-based depth-stencil copies for AMDVLK
    * [meta] Release 1.4.5
    * [dxvk] Enable asynchronous presentation on all hardware
    * [dxvk] Fix synchronization around vkDeviceWaitIdle
    * [dxvk] Fix handling of undefined shader inputs
    * [dxvk] Implement pass to eliminate undefined shader input variables
    * [spirv] Add method to retrieve literal string from instruction
    * [spirv] Add method to erase data from code buffer
    * [spirv] Add method to allocate new ID from code buffer.
    * [dxvk] Avoid some unnecessary barriers around render target clears
    * [d3d11] Zero-initialize UAV counters
    * [dxvk] Always align texel buffers to at least 16 bytes
    * [d3d11] Also fix reset counter memory order for deferred context queries
    * [util] Remove traces of the allowMapFlagNoWait option
    * [d3d11] Remove allowMapFlagNoWait option
    * [d3d11] Fix memory order for query reset counter
    * [d3d11] Submit stalling event queries before flushing
    * [dxvk] Always align index buffer slices to 256 Bytes
    * [dxvk] Store shader capability information in separate set of flags
    * [util] Disable strict DC mode for MGSV again
    * [util] Add app profile for Metal Gear Solid 5
    * [dxvk] Enable option to disable OpenVR integration
    * [dxvk] Move extension provider list to DxvkInstance
    * [dxvk] Always align vertex buffer slices to 256 bytes
    * [d3d11] Fix uninitialized DSV flags
    * [dxvk] Remove option to disable transfer queue
    * [dxvk] Remove ability to query instance from adapter
    * [d3d11] Don't query DXVK instance from adapter
    * [dxvk] Pass DXVK instance to DXVK device directly, not through the adapter
    * [dxgi] Query DXVK instance from DXGI factory, not the adapter
    * [dxvk] Document wonky DxvkAdapter ref count behaviour
    * [d3d11] Hold reference to DxvkInstance
    * [dxvk] Use static variables for extension provider instances
    * [dxvk] Implement extension provider system
    * [build] Simplify and correct errors in options handling
    * [build] Demote no frontends/tests to a warning
    * [d3d11] 'a' is not a very good name for a variable
    * [d3d11] Don't synchronize with CS thread on present
    * [dxvk] Let device know that async presentation is enabled
    * [d3d11] Do not synchronize with CS thread in GetData
    * [d3d11] Move query state tracking to immediate context implementation
    * [d3d11] Move common Begin/End implementation to immediate context
    * [d3d11] Track used queries in deferred contexts and command lists
    * [d3d11] Only execute Begin for scoped queries
    * [util] Fix != and == operator for private/public COM pointers
    * [d3d11] Only add storage buffer usage flag to constant buffers if needed
    * [d3d11] Move handling of constantBufferRangeCheck option to D3D11Options
    * [d3d11] Remove useless members from D3D11DeferredContextMapEntry
    * [dxgi] Use 64-bit integers for refresh rate matching math
    * [dxbc] Remove old constant buffer range check
    * [dxbc] Don't emit a spec constant for uniform buffers
    * [dxbc] Use SSBOs for dynamically indexed constant buffers if needed
    * [dxbc] Parse dynamically indexed flag for constant buffers

Files

/usr/libexec/dxvk
/usr/libexec/dxvk/lib
/usr/libexec/dxvk/lib/d3d10core.dll
/usr/libexec/dxvk/lib/d3d11.dll
/usr/libexec/dxvk/lib/d3d9.dll
/usr/libexec/dxvk/lib/dxgi.dll


Generated by rpm2html 1.8.1

Fabrice Bellet, Fri Feb 2 23:36:56 2024