Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Factory
dxvk
dxvk.changes
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File dxvk.changes of Package dxvk
------------------------------------------------------------------- Sat Nov 23 20:28:31 UTC 2024 - Simon Vogl <simon.vogl@gmx.net> - Update to 2.5.1: * Fixed a major regression where anisotropic filtering would not work correctly in D3D9 games * Fixed some build issues with dxvk-native * Fixed some build issues with recent versions of clang * GTA Trilogy Definitive Edition: Work around a crash when HDR is enabled * Note: Since these games use Unreal Engine 4, HDR is unsupported in D3D11 mode ------------------------------------------------------------------- Fri Sep 27 00:12:25 UTC 2024 - Simon Vogl <simon.vogl@gmx.net> - Update to 2.4.1: * The size for memory chunks is now determined dynamically based on the amount of memory the application has already allocated This should improve the out-of-the-box behaviour in various game launchers; the dxvk.maxChunkSize option was removed accordingly * Fixed an issue where the Vulkan swap chain would not always be recreated appropriately in a native Wayland environment * Fixed an issue with descriptor pools growing too large on Nvidia cards in some situations * Changed default shader code generation for DXBC mad instructions to work around flickering issues in games that use different vertex shaders to render the same geometry in multiple render passes. The d3d11.longMad and d3d9.longMad options were removed accordingly * Improved overall robustness of the D3D8 implementation with error handling and fixed various memory leaks * Slightly improved performance by optimizing vertex buffer uploads * Significantly improved performance in some games using Software Vertex Processing * Fixed full-screen presentation issues in some Game Maker games * Removed VK_IMAGE_USAGE_SAMPLED_BIT from textures that don't need it * Enabled strict float emulation by default on AMDVLK now that this driver optimizes the pattern emitted by DXVK Do note that this was already the case on RADV * Chrome: Gold Edition: Enabled 60 FPS limit to work around game issues at higher frame rates * GTA: San Andreas: Fix regression that made it crash with DXVK 2.4 * Operation Racoon City: Worked around a game crash * Prince of Persia (2008): Enabled 240 FPS limit to work around game issues at very high frame rates * Rayman 3: Fixed missing geometry * Serious Sam 2: Fix in-game videos * Splinter Cell: Pandora Tomorrow: Enabled 60 FPS limit to fix broken input and physics * The First Templar: Fixed lighting issues * The Sims 2: Fix regression that made it crash with earlier DXVK versions * Worked around a general issue wherein some games default to an integrated GPU based on the amount of available video memory * Worked around an issue where various games would misbehave when the amount of available VRAM is reported as a power of two * Changed shader code generation for dot product instructions to be more in line with code generation on native drivers This fixes a water rendering issue in Trails through Daybreak on Nvidia * Implemented a basic dead code elimination pass to avoid generating invalid SPIR-V shaders in rare situations Note: All these shader-related changes will invalidate fossilize databases * Games will now leave fullscreen mode when the game window loses focus This is closer to Windows behaviour and fixes various issues with games hanging on some setups * Made sure the built-in options in DXVK for a game take precedence over the options enabled/disabled by DXVK-NVAPI This fixes a performance regression in God of War on Nvidia GPUs * Batman Arkham Knight: Worked around an issue where the game does not start when it detects an Intel GPU * Hunt Showdown: Fixed a crash caused by DXVK reporting a very high UMD driver version * Kena: Bridge of Spirits: Worked around a water rendering issue when the game detects an Intel GPU * Microsoft Flight Simulator: Fixed garbled screen on start-up * Senran Kagura Peach Ball: Fixed character models being rendered the wrong way around * The Sims 4: Work around a crash caused by a use-after-free bug in the game ------------------------------------------------------------------- Sun Aug 25 11:40:13 UTC 2024 - Simon Vogl <simon.vogl@gmx.net> - Update to 2.4: * Fixed various issues with D3D9 fixed-function texture coordinate processing * Fixed pipeline layout compatibility issues when using graphics pipeline libraries, which would cause crashes or rendering issues on AMD's official drivers with pipeline libraries enabled * If supported, VK_NV_descriptor_pool_overallocation will now be used to potentially save small quantities of descriptor memory * Improved descriptor pool management in general to save memory in case a game renders without ever presenting to the screen * Improved video processor blit functionality * Improved compatibility to third-party mods hooking various DXGI entry points * Battlefield 2, 2142: Work around hang on alt+tab * Dead Space 2: Work around issues caused by the game's Vsync implementation * Dragonshard: Work around performance issues * Fallout 4: Work around an issue with the game locking itself to 45 FPS on Steam Deck OLED * Fallout New Vegas: Fix rendering issues when using certain mods * Ghostbusters Remastered: Work around flickering character faces * Gothic 3: Fix shadow rendering issues caused by incorrectly reported format support * Guild Wars 2: Work around a flickering issue * Prototype: Work around broken shadow rendering if the game detects an AMD or Intel GPU * Star Citizen: Work around an issue with the game's UMD version check * The Sims 2: Work around low CPU-bound performance in some situations * Tomb Raider Legend: Work around flickering character issues * Red Faction Guerrila Remastered: Work around sky box rendering issues * Rise of Nations: Work around crash on alt+tab * Watch Dogs, Watch Dogs 2: Work around flickering character issues * WRC 4: Enable 60 FPS limit to work around audio issues - Change _service file mode from deprecated "disabled" mode to new "manual" mode to make it work again. ------------------------------------------------------------------- Fri Feb 23 08:32:22 UTC 2024 - Richard Rahl <rrahl0@proton.me> - update to 2.3: * If VK_KHR_present_wait is supported, and if vertical synchronization is enabled, frame latency events will now be signaled when an image is actually being presented * if VK_EXT_swapchain_maintenance1 is supported, enabling and disabling vertical synchronization may no longe require recreating the Vulkan swap chain * dxgi.nvapiHack config option was deprecated * new option dxgi.hideNvidiaGpu * dxgi.tearFree and d3d9.tearFree options were consolidated into a new dxvk.tearFree option * Configuration options can now be specified via an environment variable, DXVK_CONFIG * VK_EXT_depth_bias_control is supported, depth bias scaling will now be correct in most situations * VK_EXT_line_rasterization and its relevant features are supported * VK_KHR_maintenance5 is supported, DXGI_FORMAT_A8_UNORM images will now use the corresponding Vulkan format * D3D9 command submission now works the same way as it does for D3D11 * Fixed a minor issue with D3D9 feedback loop tracking * Fixed a minor issue with D3D11 stream output * Fixed a bug and performance issues with the implementation of D3D11 tiled resources * Fixed various issues with reporting HDR metadata. * Fixed a crash when compiling D3D9 shaders generated by the vkd3d HLSL compiler * Implemented keyed mutex synchronization on top of newly added winevulkan functionality * Added stubs for various D3D9On12 interop interfaces * Added an interface to allow external libraries, such as NVAPI, to enable HDR in various D3D11 games * A Total War Saga: TROY: Fixed trees not rendering when MSAA is enabled * Far Cry 2: Fixed crash when using D3D10 * Halo Online: Fixed water rendering * Lara Croft and the Temple of Osiris: Fixed deadlock when using Exclusive Fullscreen * RaceRoom Racing Experience: Fixed a crash when starting a race * Spider Man: Shattered Dimensions: Fixed a regression that caused blocky shadows * Test Drive Unlimited 2: Fixed shadows on grass * The Sims 2: Fixed a regression in DXVK 2.2 that affected terrain rendering * Titanfall: Fixed a crash caused by a miscompiled shader * Tomb Raider Anniversary: Improved performance ------------------------------------------------------------------- Wed May 24 02:29:22 UTC 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 5 22:16:37 UTC 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 5 12:55:46 UTC 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 6 15:44:36 UTC 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 15:18:04 UTC 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 5 14:19:05 UTC 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 13:21:28 UTC 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 15:02:04 UTC 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 08:48:50 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org> - Build only on x86* ------------------------------------------------------------------- Sat Jun 19 13:34:07 UTC 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 2 06:25:09 UTC 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 06:38:59 UTC 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 2 16:10:13 UTC 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 8 06:44:06 UTC 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 5 17:49:06 UTC 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 17:25:31 UTC 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 23:20:18 UTC 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 ------------------------------------------------------------------- Tue Dec 10 22:31:58 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.4: * [d3d11] Actually fix subresources discarded by DiscardView1 * [d3d11] Ignore D3D11_COPY_DISCARD * [d3d11] Overhaul DiscardResource and DiscardView implementations * [d3d11] Fix uninitialized DSV flags * [d3d11] Hold reference to DxvkInstance ------------------------------------------------------------------- Sat Dec 07 15:22:01 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.6: * 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 ------------------------------------------------------------------- Wed Nov 20 19:03:31 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.5: * [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 ------------------------------------------------------------------- Sun Oct 27 18:52:21 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.4: * [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 ------------------------------------------------------------------- Sat Oct 19 14:23:52 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.3: * [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 ------------------------------------------------------------------- Sat Oct 05 10:55:04 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.2: * [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 ------------------------------------------------------------------- Sun Sep 29 17:31:56 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4.1: * [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 ------------------------------------------------------------------- Mon Sep 23 20:48:48 UTC 2019 - pousaduarte@gmail.com - Update to version 1.4: * [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 ------------------------------------------------------------------- Mon Sep 09 19:46:47 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3.4: * [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 ------------------------------------------------------------------- Sun Sep 01 20:05:59 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3.3: * [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 ------------------------------------------------------------------- Thu Aug 08 20:16:06 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3.2: * [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 ------------------------------------------------------------------- Sat Jul 27 17:01:34 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3.1: * [meta] Release 1.3.1 * [dxvk] Don't log submission errors on presentation ------------------------------------------------------------------- Fri Jul 19 12:59:25 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3~git20190719: * [meta] Update README * [hud] Add GPU load monitor * [dxvk] Add GPU idle time to stat counters * [dxvk] Estimate GPU idle time based on cleanup thread activity * [dxvk] Fix meta copy operation for mipmapped images * [dxvk] Fix meta copy operation for 1D images * [dxvk] Remove old meta vertex and geometry shaders * [dxvk] Use new fullscreen shaders for mip gen operations * [dxvk] Use new fullscreen shaders for meta resolve operations * [dxvk] Use new fullscreen shaders for meta copy operations * [dxvk] Add new vertex and geometry shaders for fullscreen passes * [d3d11] Always enable depth-stencil attachment usage for depth-stencil images * [dxvk] Use render pass copy for depth-stencil images if beneficial * [dxvk] Implement device- and driver-specific performance hints * [dxvk] Support depth-stencil meta-copy operations * [dxvk] Support depth-stencil formats for meta copy objects * [dxvk] Add meta copy shaders for depth-stencil formats * [dxvk] Enable VK_EXT_shader_stencil_export if available * [dxvk] Log more device info on device creation * [util] Improve multi-line logging * [d3d11] Use unlikely() for some query code * [d3d11] Use private temporary references for queries * [d3d11] Use private temporary references for state objects * [util] Add convenience method to return public/private references * [d3d11] Simplify ApplyPrimitiveTopology code * [d3d11] Simplify BindIndexBuffer code * [dxvk] Don't check if bindings have changed in the backend * [dxvk] Don't track command count in CS chunks * [d3d11] Catch invalid ClearUnorderedAccessViewFloat calls * [d3d11] Handle integer formats in ClearRenderTargetView correctly * [dxvk] Add method to retrieve buffer view format info * [dxvk] Change DxvkImageView::formatInfo to return view format info * [dxvk] Use correct command buffer for buffer updates * [dxvk] Compute memory chunk size per memory type rather than per heap * [dxvk] Try harder to allocate memory from a given memory type * [dxvk] Don't put large resources into their own memory allocations ------------------------------------------------------------------- Tue Jul 16 07:23:12 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3~git20190716: * [dxvk] Don't mark queries as stalling if DONOTFLUSH is set * [meta] Fix release number * [dxvk] Limit maximum size of multi-slice buffers * [dxvk] Fix offset in DxvkBuffer::subSlice * [dxvk] Template BindPoint parameter in some DxvkContext methods * [dxvk] Template Index parameter of commitGraphicsState * [dxvk] Get rid of validateCompute/GraphicsState ------------------------------------------------------------------- Sun Jul 14 14:51:20 UTC 2019 - pousaduarte@gmail.com - Update to version 1.3~git20190714: * [dxvk] Don't use derivative pipelines * [d3d11] Initialize subresourceLayers in the inner loop * [meta] Release 1.3 * [dxvk] Rename memoryAvailable -> memoryBudget * [spirv] Implement opCross * [spirv] Implement opFMix * [tests] Enable demoteToHelperInvocation in off-line DXBC compiler * [dxbc] Use OpDemoteToHelperInvocationEXT for discards if supported * [spirv] Add support for OpDemoteToHelperInvocationEXT * [d3d11] Enable shaderDemoteToHelperInvocation feature * [dxvk] Enable VK_EXT_shader_demote_to_helper_invocation if available * [meta] Update SPIR-V headers * [meta] Update Vulkan headers * [dxbc] Print shader signatures at debug loglevel * [dxbc] Add string output function for DxbcRegMask * [dxbc] Add ostream operator for DxbcScalarType ------------------------------------------------------------------- Wed Jul 10 20:40:56 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.3~git20190708: * [build] Mark tests as gui apps in Meson * [dxbc] Enable early discard on RADV/ACO * [d3d11] Fix RSGetViewports and RSGetScissorRects behaviour * [dxvk] Remove obsolete DxvkEvent class * [d3d11] Use new signals as frame synchronization events * [dxvk] Add support for new signals to the backend * [dxvk] Add new signal class ------------------------------------------------------------------- Sat Jul 06 10:40:09 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.3~git20190705: * [d3d11] Don't immediately synchronize after present * [dxvk] Add option to toggle asynchronous presentation * [dxvk] Implement asynchronous presentation * [dxvk] Fix typo * [d3d11] Return error when mapping an already mapped image * [dxvk] Check whether CS thread is busy before synchronizing with it * [dxvk] Increase staging buffer size to 32 MiB * [dxvk] Increase memory chunk size to 128 MiB ------------------------------------------------------------------- Wed Jul 03 12:26:00 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.3~git20190703: * [dxvk] Print VK_EXT_memory_budget stats on allocation failure * [dxvk] Add VK_EXT_memory_budget as a passive extension * [dxvk] Add support for passive device extensions * [dxvk] Free memory if vkMapMemory fails * [dxvk] Give null values to empty DxvkGraphicsPipelineInstances * [util] Add correct type suffixes to Sha1Hash dword function to silence compiler warning ------------------------------------------------------------------- Sat Jun 29 09:34:34 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.3~git20190629: * [d3d11] Enable initial image uploads over SDMA * [d3d11] Enable initial buffer uploads over SDMA * [dxvk] Upload HUD font texture via SDMA * [dxvk] Implement image uploads on SDMA * [dxvk] Implement buffer uploads on SDMA * [dxvk] Support queue ownership transfer barriers * [dxvk] Explicitly specify the command buffer for copy commands * [dxvk] Rename and add SDMA barrier sets * [dxvk] Add SDMA command buffer * [dxvk] Refactor queue submission * [dxvk] Create transfer queue command pool if available * [dxvk] Don't pass queue handles to DxvkCommandList * [dxvk] Add option to enable or disable the transfer queue * [dxvk] Provide way to access queue properties from device * [dxvk] Rework queue family selection * [dxvk] Properly clear used command buffer flags * [dxvk] Get rid of array in present vertex shader ------------------------------------------------------------------- Thu Jun 27 20:44:41 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.3~git20190627: * [d3d11] Remove unused SetRenderTargets method * [d3d11] Spill render pass when restoring context state as needed * [d3d11] Fix UAV binding in OMSetRenderTargets{,AndUnorderedAccessViews} * [spirv] Expose MatrixStride decoration for members * [spirv] Add generic memberDecorate * [spirv] Expose opMatrixTimesMatrix, opMatrixTimesVector and opVectorTimesMatrix * [dxvk] Avoid redundant vertex and index buffer tracking * [dxvk] Reorder command list reset operations by importance * [meta] Release 1.2.3 * [d3d11] Copy initial texture data to mapped buffer, if available * [dxvk] Use void pointers for packImageData * [dxvk] Avoid updating binding mask on hot path in updateShaderResources * [dxvk] Implement comparison and setting multiple bits for DxvkBindingSet * [dxvk] Clean up updateShaderResources a bit * [dxvk] Avoid redundant resource tracking * [dxvk] Add more generic version of DxvkBindingMask * [dxvk] Fix poor API design around defining resource slots ------------------------------------------------------------------- Sat Jun 22 10:49:19 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.2~git20190621: * [dxgi] Don't fail leaving fullscreen if window is already destroyed * [dxvk] Release staging buffer memory for HUD context * [dxvk] Add method to explicitly release staging buffer memory * [dxvk] Remove old staging buffer code * [dxvk] Remove old staging buffer allocator from DxvkCommandList * [dxvk] Use new staging buffer allocator in DxvkContext * [dxvk] Implement new staging buffer allocator * [d3d11] Further optimize constant buffer binding * [d3d11] Template all functions that take ShaderStage as an argument * [dxvk] Prefer VRAM allocation over dedicated sysmem allocation * [util] Correct return value of SetThreadDescription * [dxvk] Log memory utilization per heap on memory allocation failures * [d3d11] Fix GetData parameter validation * [d3d11] Implement timestamp disjoint queries * [d3d11] Use an array for query and event objects ------------------------------------------------------------------- Sat Jun 15 22:05:44 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.2~git20190615: * [dxvk] Add method to permanently change image layout * [meta] Release 1.2.2 * [dxbc] Disable atomic counter optimization on old RADV versions * [dxvk] Always pass through fully enabled color write masks * [d3d11] Fix CheckMultisampleQualityLevels return code * [dxvk] Fix various issues in GetFormatSupportFlags * [vulkan] Add operator overloads for VkOffset3D/2D * [d3d11] Implement IDXGISurface2 for ID3D11Texture1D * [d3d11] Fix default blend factor * [d3d11] Fix WSize computation for UAV creation * [d3d11] Don't create SRVs and UAVs with a size of 0 * [d3d11] Skip GenerateMips if mip gen flag is not set on resource * [d3d11] Validate bind flags for D3D11_RESOURCE_MISC_GENERATE_MIPS * [d3d11] Validate buffer descriptions * [d3d11] Fix behaviour with a viewport count of zero * [d3d11] Fix incorrect behaviour when a scissor rect is not specified * [d3d11] Fix crash when setting too many viewports * [util] Report correct GPU vendor to Far Cry 3, 4 and Blood Dragon * [dxbc] Fix useRawSsbo option * [dxbc] Repurpose useRawSsbo option * [dxbc] Always use raw storage buffers if alignment requirements are met * [dxbc] Store alignment for raw and structured buffers * [d3d11] Fix crash in GetMaximumFrameLatency with a nullptr argument * [util] Fix COM private data bug when passing NULL interface * [dxgi] Fix some issues introduced with FilterModesByDesc cleanup ------------------------------------------------------------------- Tue Jun 11 12:24:44 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.1~git20190611: * [dxgi] Return non-exact matches from FindClosestMatchingMode1 ------------------------------------------------------------------- Mon Jun 10 11:01:30 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.1~git20190606: * [dxvk] Revert buffer re-binding optimization * [dxvk] Add likely/unlikely around critical CS chunk append code * [dxvk] Only update buffer object in buffer slices if necessary * [d3d11] Avoid buffer ref count changes when only changing offsets * [dxvk] Avoid redundant descriptor set updates when binding buffers * [d3d11] Fix inconsistencies in Map/Unmap on immediate/deferred contexts * [d3d11] Avoid emitting redundant vertex and index buffer updates * [util] Add unlikely() around COM ref counting code * [d3d11] Add some likely/unlikely around CS flushes * [d3d11] Don't clear DSV aspects that are marked as read-only * [d3d11] Initialize depth images to zero rather than one * [d3d11] Fix initial swap chain image count * [dxvk] Fix binding indices for vertex attribute divisor * [util] Fix return value of AddRef ------------------------------------------------------------------- Mon May 27 12:51:42 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.1~git20190525: * [d3d11] Respect COPY_FLAG_NO_OVERWRITE when updating constant buffers ------------------------------------------------------------------- Fri May 24 14:05:06 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2.1~git20190520: * [d3d11] Validate subresource index in MapImage * [d3d11] Support mapping multiple image subresources at the same time * [dxvk] Add new helper function to compute mip level extent * [meta] Release 1.2.1 * [d3d11] Remove useless 'virtual' keyword * Revert "[d3d11] Use STDMETHODCALLTYPE for private virtual method" * [util] Also test for symlinks when installing/uninstalling ------------------------------------------------------------------- Sat May 18 15:10:00 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2~git20190518: * [utils] Don't try to install or remove missing dlls * [util] Enable D3D11_MAP_FLAG_DO_NOT_WAIT for The Surge * [d3d11] Update mapped buffers of staging textures immediately * [util] Spoof Nvidia GPUs for Mirror's Edge Catalyst ------------------------------------------------------------------- Thu May 16 18:17:39 UTC 2019 - pousaduarte@gmail.com - Update to version 1.2~git20190515: * [d3d11] Use STDMETHODCALLTYPE for private virtual method * [build] Add options to disable dxgi/d3d* build * [d3d10] Fix winelib build * [tests] Enable atomic counter optimization for standalone DXBC compiler * [dxbc] Use subgroup operations for atomic append/consume operations * [spirv] Add OpUndef and more subgroup instructions * [dxbc] Add option to use subgroup ops for atomic counter operations * [d3d10] Add static method implementing D3D10CreateDeviceAndSwapChain1 * [d3d11] Add static method implementing D3D11CreateDeviceAndSwapChain * [util] Don't use `if constexpr` * [dxvk] Don't align pushg constant data to 64 bytes * [dxvk] Apply view swizzles to image clears * [dxvk] Add method to swizzle clear color values * [dxvk] Pass clear value to clearRenderTarget by value * [d3d11] Use private references for render targets * [util] Add support for private references in Com<...> wrapper * [util] Fix COM reference count type * [meta] Release 1.2 * Changed visibility of the winelib build to behave more like MinGW ------------------------------------------------------------------- Sat May 11 10:19:16 UTC 2019 - pousaduarte@gmail.com - Update to version 1.1.1~git20190509: * [dxvk] Don't use ALL_COMMANDS_BIT to notify events * [dxvk] Increase number of queued command buffers to 12 * [d3d11] Flush more aggressively when CPU bound * [d3d11] Flush more aggressively on stalling Event queries * [dxvk] Change flushing behaviour of immediate context methods * [util] Optimize popcnt operation * [dxvk] Add aspect mask parameter to clearImageView * [dxvk] Begin render pass in clearImageViewFb if necessary ------------------------------------------------------------------- Wed May 08 12:39:25 UTC 2019 - pousaduarte@gmail.com - Update to version 1.1.1~git20190508: * [dxvk] Compact vertex buffer bindings * [dxvk] Optimize unbound vertex buffer handling * [dxvk] Fix unbound vertex buffer handling * [dxvk] Optimize vertex buffer binding * [util] Disable NvAPI hack for Mirror's Edge Catalyst * [hud] Optimize HUD rendering * [dxvk] Implement push constant API * [dxvk] Add push constant range info to shaders and pipeline layout * [dxvk] Pass slot mapping to pipeline layout constructor * [dxvk] Optimize spinlock implementation ------------------------------------------------------------------- Mon May 06 12:39:09 UTC 2019 - pousaduarte@gmail.com - Update to version 1.1.1~git20190506: * [dxvk] Bump state cache version to v5 * [dxvk] Add API for specialization constants * [dxvk] Remove extra pipeline state * [d3d11] Implement depth bounds extension * [d3d11] Implement MultiDrawIndirectCount extension * [d3d11] Support count buffer in Set|BindDrawBuffers * [d3d11] Implement MultiDrawIndirect extension * [d3d11] Implement barrier control extension * [d3d11] Add stub implementation of D3D11DeviceExt * [d3d11] Add stub implementation of D3D11DeviceContextExt * [d3d11] Add interfaces to support D3D11 extensions * [dxvk] Implement depth bounds test in backend * [dxvk] Introduce new pipeline state to enable depth bounds test * [dxvk] Implement indirct draw commands with indirect count * [dxvk] Enable VK_KHR_draw_indirect_count if available * [dxvk] Fix stale vertex attribute divisor * [dxvk] Off-load command buffer submission to separate thread * [d3d11] Fix MSVC 2017 compilation ------------------------------------------------------------------- Sat May 04 19:57:58 UTC 2019 - pousaduarte@gmail.com - Update to version 1.1.1~git20190504: * [meta] Release 1.1.1 * [d3d11] Implement D3D11DeviceContext::SwapDeviceContextState * [d3d11] Implement D3D11Device::CreateDeviceContextState * [d3d11] Add class to implement D3DDeviceContextState ------------------------------------------------------------------- Fri May 03 21:38:30 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190503: * [d3d10] Explicitly define GUID for ID3D10StateBlock * [dxvk] Disable depthWriteEnable if depth attachment has read-only layout * [dxvk] Add helper function to get info about depth-stencil image layouts * [d3d10] Implement state blocks * [spirv] Implement proj sample variants * [d3d11] Fix counter value offset in DrawAuto * [d3d11] Always enable shaderStorageImageWriteWithoutFormat * [d3d11] Minor Map/Unmap optimizations * [d3d11] Minor CPU savings * [dxvk] Bump state cache format to version 4 * [d3d11] Set up extra state for the HUD renderer * [d3d11] Set up unused extra state for the backend correctly * [dxvk] Remove old spec constant code * [dxvk] Use new specialization constant code for graphics pipelines * [dxvk] Use new specialization constant code for compute pipelines * [dxvk] Add new structure to generate specialization constant info * [dxgi] Change default of s_gamma_bound to true * [dxbc] Remove old spec constant code * [dxbc] Use new spec constant API for rasterizer sample count * [dxbc] Add new emitNewSpecConstant method * [d3d11] Add missing interface queries for IDXGIObject and IDXGIDeviceSubObject * [util] Enable constant buffer range check for NieR:Automata * [dxbc] Disable Constant Buffer Range Check on AMD * [dxvk] Re-implement early discard with quad granularity * [d3d11] Check if uav's counter slice is defined in CopyStructureCount * [dxbc] Fix xfb passthrough for system values * [d3d11] Clean up rasterizer state initialization * [dxbc] Store sample positions as vec2 array * [spirv] Add constvec2f32 helper * [dxbc] Remove some old TODOs * [dxbc] Correctly report a sample count of 0 for unbound images * [dxbc] Correctly report a size of 0 for unbound images * [dxbc] Correctly report a size of 0 for unbound buffers * [dxbc] Fix typo in sample positions ------------------------------------------------------------------- Sun Apr 28 12:43:30 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190427: * [d3d11] Implement IDXGIResource1 for textures and buffers * [d3d11] Add basic implementation of IDXGIResource1 * [dxgi] Add missing DXGI_CPU_ACCESS_* defines * [d3d11] Pass texture as D3D11Resource to DXGI interop objects * [d3d11] Implement Map / Unmap for IDXGISurface2 * [d3d11] Implement IDXGISurface2 for compatible 2D textures * [meta] Add default dxvk.conf ------------------------------------------------------------------- Fri Apr 26 17:42:42 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190426: * [dxvk] Add support for per-app configuration * [dxvk] Add some 'unlikely' statements * [d3d11] Remove predication workaround for RADV * [d3d11] Improve CreatePredicate logging * [d3d11] Disable Predication support * [dxvk] Simplify validateGraphicsState ------------------------------------------------------------------- Wed Apr 24 12:34:31 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190423: * [d3d11] Don't use presentation fence * [d3d11] Select sync event based on back buffer count * [d3d11] Allocate one additional swap chain image ------------------------------------------------------------------- Sat Apr 20 18:35:43 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190419: * [dxvk] Use stricter barriers around meta operations * [dxvk] Support image sub-regions for resolve operations * [dxvk] Add adapterCount function to DXVKInstance. * [spirv] Implement constvec3f32 * [spirv] Implement opVectorTimesScalar * [spirv] Implement opPow * [dxvk] Fix subresources in barriers for 2D views of 3D images * [dxbc] Replace computeResourceSlotId by light-weight alternatives ------------------------------------------------------------------- Mon Apr 15 11:46:20 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190415: * [hud] Show compiler activity indicator for at least one second * [dxbc] Do not emit GS system values if rasterization is disabled * [d3d11] Fix hasing of geometry shaders with stream output ------------------------------------------------------------------- Sun Apr 14 18:17:39 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190414: * [d3d11] Track query state correctly * [d3d11] Don't allocate predicate for unsupported predicates * [hud] Add new HUD entry to show shader compiler activity * [hud] Pass surface size to HUD renderer * [dxvk] Add stat counter for shader compiler activity ------------------------------------------------------------------- Sat Apr 13 11:10:15 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190413: * [meta] Update README with 'api' option for the HUD ------------------------------------------------------------------- Fri Apr 12 17:09:59 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190412: * [util] Enable D3D11_MAP_FLAG_DO_NOT_WAIT for Anno 1800 * [build] Fix MSVC build with version info * [dxvk] Increase query pool sizes * [dxvk] Implement shader-based resolve * [dxvk] Re-implement class to create meta-resolve objects * [dxvk] Enable VK_AMD_shader_fragment_mask if available * [dxvk] Add new resolve shaders * [d3d11] Allocate mapped buffers for staging images on cached memory * Revert "[d3d11] Select memory type based on CPU access flags" * Revert "[meta] Release 1.1" * [dxgi] Fix broken gamma with combined image samplers * [meta] Release 1.1 ------------------------------------------------------------------- Sat Apr 06 13:01:28 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190406: * [dxvk] Fix circular reference between DxvkDevice and DxvkGpuQueryPool * [build] Use `generator` to produce resource files * [build] Fix winelib `wrc` * [dxvk] Fix build failure for some people * [build] Add version info to compiled DLLs * [util] Enable constant buffer range check for Dark Souls Remastered ans Grim Dawn * [d3d11] Add option to enable constant buffer range checks * [dxbc] Implement optional constant buffer range check * [dxvk] Fix move constructor of DxvkShaderModule * [spirv] Fix initial allocation size for compressed buffer * [dxvk] Store compressed shader modules in DxvkShader * [dxvk] Store enabled SPIR-V capabilities explicitly * [spirv] Implement in-memory compression for shader modules * [util] Add helpers to pack/unpack data to/from larger units * [dxvk] Zero-Initialize SpecConstantData ------------------------------------------------------------------- Wed Apr 03 19:01:04 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190403: * [dxvk] Simplify DxvkShaderModule * [dxvk] Don't cache shader modules for graphics pipelines * [dxvk] Don't cache shader modules for compute pipelines * [d3d11] Use combined image sampler descriptors for the presenter * [hud] Use combined image s1ampler for the font texture * [dxvk] Support combined image sampler descriptors in the backend * fix typo in README.md * Only try once to recreate surfaces on surface loss. * [vulkan] Don't loop endlessly on a lost surface. * [vulkan] Recreate the surface on surface loss. * [dxvk] Properly reset global barrier access flags * [dxvk] Fix write access flag for barriers * [dxvk] Use global memory barrier instead of resource barriers if possible * [dxvk] Pull buffer updates out of render passes whenever possible * [dxvk] Allow barriers to be recorded into a specific command buffer * [dxvk] Rename DxvkCmdBufferFlag -> DxvkCmdBuffer * [dxvk] Add missing feature check for conditional rendering * [d3d11] Lazily allocate predicate on SetPredication * [dxvk] Set empty scissor rect when the app requests empty viewport * [dxvk] Do not invalidate iterator before disabling queries * [dxvk] Introduce extra pipeline state * [dxvk] Remove unused alphaToOne state ------------------------------------------------------------------- Sun Mar 31 12:45:49 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190331: * [util] Enable deferred surface creation for "Dissidia Final Fantasy NT Free Edition". Avoid white screen, "D3D11Device: No such vertex shader semantic: COLOR0"... https://www.reddit.com/r/archlinux/comments/b7e38x/protondxvk_dissidia_nt/ ------------------------------------------------------------------- Sat Mar 30 14:36:54 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190329: * [util] Enable deferred surface creation for Nioh * [dxgi] Use a recursive mutex. * [d3d11] Implement fast path for binding full constant buffers * [d3d11] Correctly handle out-of-bounds constant buffer ranges * [d3d11] Work around predicate buffer sync issue on RADV * [d3d11] Properly implement SetPredication * [d3d11] Allocate predicate buffer for predicates * [d3d11] Remove unused revision field from D3D11Query * [dxvk] Implement conditional rendering * [dxvk] Add command list functions for conditional rendering * [dxvk] Enable conditionalRendering feature if present * [dxvk] Enable VK_EXT_conditional_rendering if available * [vulkan] Load functions for VK_EXT_conditional_rendering * [dxvk] Remove needless lambda capture of 'this'. * [dxvk] Log vertex attributes and buffers when logging pipeline state. ------------------------------------------------------------------- Wed Mar 27 17:25:22 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190327: * [dxvk] Fix buffer offset in copyDepthStencilImageToPackedBuffer * [dxvk] Implement blitImage function * [d3d11] Select memory type based on CPU access flags * [d3d11] Implement depth-stencil uploads in resource initializer * [d3d11] Implement depth-stencil uploads in UpdateSubresource1 * [d3d11] Implement depth-stencil mapping on deferred contexts * [d3d11] Implement depth-stencil mapping on the immediate context * [d3d11] Enable shaderStorageImageExtendedFormats device feature * [d3d11] Fix image format mapping when creating mapped buffer * [d3d11] Add method to look up packed format * [dxgi] Add methods to retrieve original format mappings * [dxvk] Implement depth-stencil upload via temporary buffer * [dxvk] Implement depth-stencil unpacking * [dxvk] Create depth-stencil unpacking pipelines * [dxvk] Add depth-stencil unpacking shaders ------------------------------------------------------------------- Mon Mar 25 19:27:27 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190325: * [dxvk] Rename dxvk_resolve_{vert|geom} -> dxvk_copy_{vert|geom} * [dxvk] Optimize meta copy barriers * [dxvk] Optimize meta geometry shaders ------------------------------------------------------------------- Mon Mar 25 13:43:37 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190324: * [d3d11] Don't sample gamma texture if the gamma curve is identity * [dxvk] Remove shader-based resolve * [dxvk] Use resolve attachment for meta-resolve ops ------------------------------------------------------------------- Sun Mar 17 19:01:44 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190317: * [dxvk] Use vkResetQueryPoolEXT to reset individual queries * [dxvk] Enable hostQueryReset device feature if available * [dxvk] Enable VK_EXT_host_query_reset if available * [meta] Update Vulkan headers to 1.1.104 * [d3d11] Use new query implementation * [dxvk] Support new query implementation * [dxvk] Create new query pool and forward it to the context * [dxvk] Add new query implementation * [d3d11] Use new GPU events for D3D11 Event queries * [dxvk] Implement method to signal GPU events * [dxvk] Create GPU event pool and forward it to the context * [dxvk] Add GPU event class ------------------------------------------------------------------- Thu Mar 14 21:37:00 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0.1~git20190314: * [meta] Release 1.0.1 * [d3d11] Don't use presentation fence on ANV * [dxgi] Remove obsolete global monitor helper functions * [dxgi] Use IDXGIVkMonitorInfo in DxgiSwapChain * [dxgi] Use IDXGIVkMonitorInfo in DxgiOutput * [dxgi] Implement IDXGIVkMonitorInfo for DxgiFactory * [dxgi] Add new COM interface for per-monitor data * [dxvk] Don't enforce HOST_CACHED flag when allocating memory * [util] Disable NvAPI hack for Star Wars Battlefront 2015 * [d3d11] Check image block alignment in UpdateSubresource1 * [util] Enable relaxed barriers for Devil May Cry 5 ------------------------------------------------------------------- Mon Mar 11 13:31:37 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0~git20190309: * [dxbc] Use SDiv instead of ShiftRightLogical for index calc on Nvidia ------------------------------------------------------------------- Sun Mar 03 15:32:13 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0~git20190302: * [dxvk] Only enable xfb subpass barrier if feature is enabled * [d3d11] Reimplment GetEnabledShaderStages using getShaderPipelineStages * [dxvk] Use getShaderPipelineStages for dummy resource creation * [dxvk] Implement DxvkDevice::getShaderPipelineStages ------------------------------------------------------------------- Thu Feb 28 23:14:57 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0~git20190227: * [d3d11, d3d10] Init returnptrs for CreateDevice funcs. * [d3d10] Fix and cleanup S_FALSE handling * [dxgi] Correct return values for CreateDXGIFactory[1/2] * [d3d10] Fix null pBlendStateDesc being dereferenced on def. desc * [d3d10] nullptr checks for resource creation * [d3d11] nullptr check descs & fix return values ------------------------------------------------------------------- Wed Feb 27 19:18:11 UTC 2019 - pousaduarte@gmail.com - Update to version 1.0~git20190226: * Fix uninstall command example * [dxvk] Release 1.0 * [meta] Update README * [meta] Add option to preserve build directories to package-release.sh * [utils] Remove winetricks verb and old setup script * [utils] Add new setup script * [d3d11] Block on image acquisition fence before presenting * [vulkan] Create per-swap image fences for presenter * [vulkan] Add helper method to wait for presenter fence * [vulkan] Add optional fence paratemer to acquireNextImage * [dxbc] Fix invalid SPIR-V for FirstBitHi / FirstBitShi on vectors * [dxbc] Decorate integer fragment shader builtins as flat * [dxvk] Fix feature query for vertex attribute divisor * [dxbc] Only emit depth clamp in fragment shader if necessary * [dxvk] Use depthClipEnable during graphics pipeline creation * [dxvk] Enable depthClipEnable feature if available * [dxvk] Enable VK_EXT_depth_clip_enable if available * [meta] Update Vulkan headers to 1.1.101 * [d3d11] Do not enable shaderStorageImageMultisample device feature * [dxbc] Fix SPIR-V caps for SRV and UAV resources * [utils] Report Nvidia GPUs for Far Cry 3 and Far Cry 4 * Update DXVK_FILTER_DEVICE_NAME to support matching substrings * [util] Enable relaxed barriers for Resident Evil 7 * [hud] Add 'api' option to show the client API * [dxvk] Pass description of the client API to the DXVK device * [d3d11] Move sType/pNext initialization for dev.features to backend * [d3d11] Fix device feature enablement in some situations * [dxvk] Create state cache directory if it does not yet exist * [util] Implement createDirectory function * [util] Implement tows method to convert strings to wide strings * [dxgi,d3d11] Remove IDXGIVkPresentDevice * [d3d11] Move D3D11 presenter creation to WineDXGISwapChainFactory * [dxgi,d3d11] Move swap chain creation to D3D11 module * [dxgi] Use IWineDXGISwapChainFactory to create DXGI swap chains * [d3d11, d3d10, dxgi] Handle null ppvObject in QueryInterface. (#909) * [dxvk] Use vkCmdUpdateBuffer to clear tiny buffers * [dxvk] Don't create flat 2D views for cube maps * [util] Enable relaxed barriers for Resident Evil 2 * [d3d11] Add option to disable write-after-write barriers * [dxvk] Implemet IgnoreWriteAfterWrite for compute shaders * [dxvk] Add methods to query source access type for an accessed resource * [dxvk] Add type and context method to set barrier control flags * [dxbc] OpSDiv by 4 -> OpShiftRightLogical by 2 * [dxbc] Fix storage class for UBO loads * [utils] Enable strict division for Final Fantasy XIV * [dxbc] Add option to enable strict sm4-compliat division * [dxbc] Reduce length of temporary shader input array to a minimum * [d3d11] Minor map optimization on deferred contexts * [d3d11] Minor map optimization on immediate contexts * [dxvk] Inline DxvkBuffer::allocSlice and DxvkBuffer::freeSlice * [dxvk] Only merge clears when framebuffer size matches view size * [util] Disable nvapi hack for Far Cry 4 / Primal * [dxbc] Only load requested components from constant buffers * [dxvk] Restore dedicated allocation behaviour * [dxvk] Use VK_EXT_memory_budget to report memory usage * [dxvk] Remove dxvk.allowMemoryOvercommit option * [dxvk] Wire up memory priority to device memory allocations * [dxvk] Store device instead of adapter in memory allocator * [dxvk] Enable VK_EXT_memory_priority and features if available * [dxvk] Use high memory priority for GPU-writable resources * [dxvk] Introduce concept of priorities to device-local memory allocations * [meta] Update Vulkan headers to 1.1.98 ------------------------------------------------------------------- Sun Jan 27 21:29:08 UTC 2019 - pousaduarte@gmail.com - Update to version 0.96~git20190126: * [meta] Release 0.96 * [utils] Disable nvapi hack for Mass Effect Andromeda * [dxbc] Reduce length of tessellation i/o arrays to minimum * [dxbc] Add method to count required registers for signatures * [dxbc] Parse patch constant signature ------------------------------------------------------------------- Thu Jan 24 21:15:23 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190123: * [d3d11] Avoid redundant viewport updates in RSSetState * [dxvk] Implement separate code path for clear-only render passes * [dxvk] Use explicit barriers after framebuffer clears * [dxvk] Properly support TOP_OF_PIPE and BOTTOM_OF_PIPE for barriers * [dxvk] Don't flush barriers in renderPassBindFramebuffer * [dxvk] Make external subpass dependencies part of DxvkRenderPassOps * Revert "[dxvk] Don't put rendering stage/access masks into image info" * [dxvk] Add support for general memory barriers ------------------------------------------------------------------- Tue Jan 22 13:23:25 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190122: * [dxvk] Fix render pass ops in clearImageViewFb * [d3d11] In D3D11CreateDevice, create DXGI factory with IDXGIFactory1 support (#878) ------------------------------------------------------------------- Sat Jan 19 17:56:13 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190119: * [util] Update per-app config overrides * [d3d11] Remove d3d11.fakeStreamOutput option * [d3d11] Allow arbitrary back buffer formats for swap chains * [dxvk] Update buffer view in clearBufferView * [dxvk] Fix incorrect buffer view range for views with non-zero offset ------------------------------------------------------------------- Fri Jan 18 13:54:54 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190117: * [dxvk] Move blend constants and stencil ref state to DxvkDynamicState * [dxvk] Move depth bias out of rasterizer state * [dxvk] Only update index buffer for indexed draws * [dxvk] Bump state cache version to v3 * [dxvk] DepthClampEnable -> DepthClipEnable * [d3d11] Do not enable depth bias if the parameters are zero * [dxvk] Use minimal set of dynamic state * [dxvk] Add methods to check which dynamic states a pipeline uses * [dxvk] Don't re-emit dynamic state every time we bind a pipeline ------------------------------------------------------------------- Tue Jan 15 14:11:15 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190115: * [d3d11] Fix bad check in DrawInstancedIndirect (#863) * [d3d11] Remove unused syncMode option * [d3d11] Reintroduce support for dxgi.maxFrameLatency ------------------------------------------------------------------- Mon Jan 14 12:55:33 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190113: * [meta] It's 2019! * [util] Change getEnvVar to use getenv (#859) ------------------------------------------------------------------- Sun Jan 13 12:09:21 UTC 2019 - pousaduarte@gmail.com - Update to version 0.95~git20190112: * [meta] Release v0.95 * [d3d11] Only apply viewport and scissor rect if they have changed ------------------------------------------------------------------- Sat Jan 12 19:27:21 UTC 2019 - pousaduarte@gmail.com - Update to version 0.94~git20190112: * [d3d11] Fix log spam in SetEvictionPriority stubs * [dxbc] Support parsing the ISG1 and OSG1 signature chunks * [util] Get rid of explicit wchar_t parameter * [d3d11] Add some documentation to d3d11_cmd.h ------------------------------------------------------------------- Thu Jan 10 19:06:07 UTC 2019 - pousaduarte@gmail.com - Update to version 0.94~git20190110: * [d3d11] Fix build errors on MSVC * [d3d11] Use multiDrawIndirect for subsequent indirect draw calls * [d3d11] Enable multiDrawIndirect device feature if available * [dxvk] Introduce command type with extra data * [util] Disable NVAPI hack for NFS2015 and CoD:WW2 * [dxgi] Add dxgi.nvapiHack option to disable NVAPI workaround * [dxvk] Remove DxvkPhysicalBuffer and friends * [dxvk] Reimplement DxvkBuffer * [dxvk] Reimplement DxvkBufferView * [dxvk] Use DxvkBufferSliceHandle for dummy resources * [dxvk] Use DxvkBufferSliceHandle for staging buffers * [dxvk] Use DxvkBufferSliceHandle for transform feedback * [dxvk] Use DxvkBufferSliceHandle for buffer memory barriers * [dxvk] Introduce DxvkBufferSliceHandle * [d3d11] Fix CheckMultisampleQualityLevels behaviour * [util] Enable raw SSBOs for FIFA 19 * [dxbc] Add options to enable/disble early discard and raw ssbo use * [util] Add tristate config option type ------------------------------------------------------------------- Tue Jan 08 20:12:56 UTC 2019 - pousaduarte@gmail.com - Update to version 0.94~git20190108: * [d3d11] Improve error logging when texture creation fails * [dxbc] Fix incorrect error message * [meta] Update README * [hud] Add DXVK_HUD=full option ------------------------------------------------------------------- Fri Jan 04 19:31:08 UTC 2019 - pousaduarte@gmail.com - Update to version 0.94~git20190104: * [build] Use meson_version (#845) * Only set 2D_ARRAY_COMPATIBLE on 3D textures that will be rendered to. * [d3d10] Check if d3d11 pointers are null ------------------------------------------------------------------- Sun Dec 30 22:54:13 UTC 2018 - pousaduarte@gmail.com - Update to version 0.94~git20181230: * [d3d11] Lock in SynchronizeCsThread * [d3d10] Use context lock instead of separate device lock ------------------------------------------------------------------- Fri Dec 21 18:53:34 UTC 2018 - pousaduarte@gmail.com - Update to version 0.94~git20181221: * [dxgi] Refactor swap chain creation * [dxgi] Implement and use GetWindowClientSize fuction * [d3d11] Implement IWineDXGISwapChainFactory ------------------------------------------------------------------- Thu Dec 20 12:08:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.94~git20181220: * [vr] Cosmetic code cleanup, again * [vr] Query required device extensions during instance creation * [d3d11] Remove some unnecessary type casts in interop code ------------------------------------------------------------------- Sat Dec 15 13:52:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.94~git20181215: * [meta] Release 0.94 * [dxbc] Rename struct_c0 -> c0_t etc. * [tests] Enable raw SSBO option * [dxbc] Use raw SSBOs for raw and structured buffers if appropriate * [dxbc] Add useRawSsbo option * [dxvk] Bind buffer slice when binding buffer view * [dxvk] Relax compute shader barriers for read-only storage buffers * [dxvk] Store access flags in resource slots * [d3d11] Mark raw and structured buffers as potential storage buffers * [spirv] Add OpArrayLength instruction * [d3d11] Re-introduce support for dxgi.numBackBuffers option ------------------------------------------------------------------- Thu Dec 13 17:16:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181212: * [dxgi] Catch exception when instance creation fails * [dxbc] Check for RADV/Nvidia drivers explicitly using the new function * [dxvk] Add function to check for a specific driver / driver version * [dxvk] Enable VK_KHR_driver_properties ------------------------------------------------------------------- Tue Dec 11 17:55:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181211: * [dxgi] Clean up DxgiAdapter * [dxgi] Use new mode switch API for DxgiOutput * [dxgi] Use new mode switch API for DxgiSwapChain * [dxgi] Add new functions to change the display mode of a monitor * [dxgi] Remove SetOutputData and GetOutputData methods * [dxgi] Port DxgiOutput and DxgiSwapChain to new monitor data API * [dxgi] Add functions to share per-monitor data between DXGI objects ------------------------------------------------------------------- Tue Dec 11 13:31:39 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181210: * [dxgi] Move GetOutputFromMonitor to swap chain class * [dxgi] DxgiSwapchain: Remove SetGammaControl methods * [dxgi] DxgiSwapchain: Take factory as IDXGIFactory ------------------------------------------------------------------- Fri Dec 07 12:56:27 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181207: * [dxvk] Clear color write mask if fragment shader output is undefined * [d3d10] Initialize DSV pointer in OMGetRenderTargets ------------------------------------------------------------------- Thu Dec 06 18:37:07 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181206: * [dxgi] Ignore scaling and scanline order during fullscreen transitions ------------------------------------------------------------------- Thu Dec 06 09:22:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181204: * [dxvk] Don't re-initialize 3D images when clearing render targets * [dxgi] Report Adapter LUID if available * [d3d11] Find Vulkan device if DXGI adapter was not created by DXVK * [dxvk] Add new methods to find adapters by LUID or device ID * [dxvk] Query device ID information if available * [dxgi] Remove old DXGIDevice implementation and IDXGIVkDevice * [d3d11] Move IDXGIDevice implementation to D3D11 module ------------------------------------------------------------------- Tue Dec 04 17:52:54 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181204: * Revert "[vr] Cosmetic code cleanup" ------------------------------------------------------------------- Mon Dec 03 14:29:03 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181202: * Revert "[util] Report Nvidia GPU for Battlefield 1" * [d3d10] D3D10CreateDeviceAndSwapChain: Ignore swap chain if null * [d3d11] D3D11CreateDeviceAndSwapChain: Ignore swap chain if null ------------------------------------------------------------------- Fri Nov 30 13:25:26 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181130: * [d3d11] Implement ID3D11Multithread for D3D11 contexts * [d3d10] Implement D3D10Multithread * [util] Add likely/unlikely macros ------------------------------------------------------------------- Wed Nov 28 21:53:21 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181128: * [dxgi] Remove format lookup methods from IDXGIVkAdapter interface * [d3d11] Duplicate format table into D3D11 device * [dxgi] Remove IDXGIVkBackBuffer * [dxvk] Remove DxvkSemaphore * [dxvk] Remove DxvkSurface * [dxvk] Remove DxvkSwapChain * [d3d11] Use new Vulkan presenter * [dxvk] Support new Vulkan presenter in DxvkDevice * [dxvk] Pass raw semaphore handles to submitCommandList * [d3d11] Use flushCommandList method to flush initializer context * [vulkan] Implement new Vulkan presenter / swap chain * [dxbc] Use ballot to determine early-discard condition in fragment shaders * [spirv] Add subgroup ballot instructions * [dxvk] Refactor descriptor set allocation * [dxvk] Rebalance descriptor set allocation * [d3d11] Fix potential UAV binding issue ------------------------------------------------------------------- Mon Nov 26 13:47:28 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181126: * [util] Report Nvidia GPU for Battlefield 1 ------------------------------------------------------------------- Sun Nov 25 22:02:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181124: * [dxvk] Disable state cache for Anno 2205 ------------------------------------------------------------------- Sat Nov 24 15:26:35 UTC 2018 - pousaduarte@gmail.com - Update to version 0.93~git20181124: * [meta] Release 0.93 * [dxbc] Disable early discard on AMD cards * [dxvk] Don't put rendering stage/access masks into image info ------------------------------------------------------------------- Fri Nov 23 21:39:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181123: * [util] Enable TGSM initialization for Quantum Break * [d3d11] Add config option to enable TGSM initialization * [dxbc] Implement function to clear thread-group shared memory * [dxbc] Store workgroup size for compute shaders * [dxbc] Disable subgroup early discard on Nvidia GPUs * [dxbc] Clamp written depth value to (0.0, 1.0) * [dxbc] Use clustered subgroup operations on supported hardware * [dxbc] Fix compiler warning about uninitialized values * [tests] Enable subgroup ops for DXBC compiler app * [dxbc] Use subgroup operations for early discard * [dxbc] Remove DeferKill flag * [dxvk] Query device subgroup properties * [dxvk] Request Vulkan 1.1 instance * [spirv] Add non-uniform group instructions * [meta] Update SPIR-V headers ------------------------------------------------------------------- Tue Nov 20 20:42:51 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181120: * [dxvk] Fix typo around dual-src blending * [dxvk] Make use of VK_AMD_memory_overallocation_behavior * [dxvk] Store DXVK options directly with the instance object * [meta] Update Vulkan headers ------------------------------------------------------------------- Tue Nov 20 13:54:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181120: * [util] Remove default options that spoof AMD GPUs * [dxgi] Hack: Report Nvidia cards as AMD cards by default * [d3d11] Rename dcMapSpeedHack to dcSingleUseMode * [d3d11] Use single-use submission mode for CS chunks where possible * [dxvk] Introduce single-use mode for CS chunks * [dxvk] Patch fragment shader for dual-source blending * [dxbc] Emit Index decoration for pixel shader outputs * [spirv] Add support for Index decoration ------------------------------------------------------------------- Mon Nov 19 13:30:16 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181119: * [dxvk] Unbind graphics pipeline when spilling render pass ------------------------------------------------------------------- Sat Nov 17 22:19:23 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181117: * [dxvk] Move DxvkEventTracker to dxvk_event.{h,cpp} * [dxgi] MultiByteToWideChar counts length in characters * [dxgi] Query window size before creating presenter * Use std::string for util::getEnvVar input * [meta] Update README * [dxgi] Implement IDXGISwapChain3 * [dxgi] Implement IDXGIAdapter3 * [dxgi] Implement IDXGIFactory4 * [dxgi] Implement IDXGIDevice3 * [dxgi] Implement IDXGISwapChain2 stubs * [dxgi] Implement IDXGIOutput3 * [dxgi] Implement IDXGIFactory3 * [dxgi] Implement IDXGIOutput1 * [dxgi] Include DXGI 1.4 headers * [dxvk] Forward memory allocation statistics to the adapter * [dxvk] Set low thread priority for pipeline compiler threads * [util] Add method to set thread priority * [dxvk] Add option to set number of pipeline compiler threads ------------------------------------------------------------------- Tue Nov 13 21:32:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181113: * [dxvk] Use ticket lock to synchronize access to query objects * [util] Add ticket lock implementation ------------------------------------------------------------------- Mon Nov 12 20:49:43 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181112: * [dxgi] Refactor presenter creation ------------------------------------------------------------------- Mon Nov 12 13:57:53 UTC 2018 - pousaduarte@gmail.com - Update to version 0.92~git20181111: * [meta] Release v0.92 * [dxvk] Do not require GL_EXT_samplerless_texture_functions ------------------------------------------------------------------- Sun Nov 11 12:33:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.91~git20181110: * [dxbc] Implement Dmovc instruction * [d3d11] Support R11G11B10 format in ClearUnorderedAccessViewUint ------------------------------------------------------------------- Sat Nov 10 16:44:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.91~git20181110: * [d3d11] Don't enable StorageImageReadWithoutFormat feature for FL11_0 * [dxvk] Inline DxvkBufferView::updateView method * [dxbc] Refactor DxbcOptions * [d3d11] Do not re-upload mapped image if it was mapped for reading * [d3d11] Allow mapping depth-stencil images for reading * [d3d11] Add usage flag for meta-pack operations if necessary * [d3d11] Add helper to find exact mapping for depth-stencil formats * [dxvk] Implement DxvkContext::copyDepthStencilImageToPackedBuffer * [dxvk] Add convenience method to retrieve image descriptor * [dxvk] Create instance of depth-stencil packing objects * [dxvk] Add pipelines needed for depth-stencil packing * [dxvk] Add compute shaders for depth-stencil packing * [dxvk] Add packed size to depth-stencil formats * [tests] Add depth-stencil readback test * [dxvk] Report app name to the Vulkan implementation * [d3d11] Clear compressed images if they do not get initialized * [dxvk] Add clearCompressedColorImage method * [vulkan] Add makeSubresourceLayers helper ------------------------------------------------------------------- Tue Nov 06 19:35:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.91~git20181106: * [util] Spoof Nvidia card for Elite Dangerous * [dxbc] Don't enable sample shading for interpolation functions * [dxbc] Enable sample shading when using interpolation functions ------------------------------------------------------------------- Mon Nov 05 13:36:53 UTC 2018 - pousaduarte@gmail.com - Update to version 0.91~git20181105: * [build] Don't use empty dependencies ------------------------------------------------------------------- Sun Nov 04 20:17:48 UTC 2018 - pousaduarte@gmail.com - Update to version 0.91~git20181104: * [meta] Release 0.91 * Fixed for a05c93dd178de722c4e1d257a138fc94c4b877d6 (#748) * cross build cleanup (#746) * [dxvk] Pull 'if's into commit{Graphics,Compute}State methods ------------------------------------------------------------------- Sat Nov 03 01:40:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181102: * [dxvk] Use new vulkan helpers to create VkImageSubresourceRange structs * [dxvk] Move vulkan helpers to vulkan module * [d3d11] Remove redundant D3D11Buffer::GetSize method * [general] Remove unnecessary include directories from build files * [general] Fix some old includes ------------------------------------------------------------------- Fri Nov 02 13:32:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181102: * [dxvk] Move Vulkan loader to separate directory * [dxvk] Track device / instance ownership ------------------------------------------------------------------- Thu Nov 01 23:11:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181101: * [dxvk] Insert barrier before CS image view clear only if needed * [dxvk] Open state cache file only when necessary * [dxvk] Add DXVK context method to transparently flush the command list * [dxvk] Move sampler border color handling to the backend ------------------------------------------------------------------- Tue Oct 30 14:02:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181030: * [dxvk] Spill render pass for pipelines that use vertex stage UAVs * [dxvk] Use self-dependency to synchronize SSBO writes * [d3d11] Remove state tracking for UAV rendering * [dxvk] Spill render pass after draws with storage resources * [dxvk] Determine whether a graphics pipeline writes to resources * [dxvk] Remove unneeded atomic that holds base pipeline handles ------------------------------------------------------------------- Thu Oct 25 23:13:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181025: * [dxbc] Fix incorrect data type for explicit interpolation instructions * Revert "[d3d11] Remove some flush points" * [util] Spoof Nvidia GPU for The Vanishing of Ethan Carter Redux * [dxvk] Remove obsolete DxvkShaderKey constructor * [d3d11] Respect xfb metadata when computing shader hash * [util] Provide method to compute SHA-1 hash from multiple data chunks * [dxgi] Query device interface from the presenter * [d3d11] D3D11Presenter -> D3D11PresentDevice * [dxgi] Don't build shaders for presentation * [dxgi] Remove unused presenter options * [dxgi] Remove old DXGI presenter * [dxgi] Use new presenter for D3D11 * [d3d11] Add COM interface for API-agnostic presenter * [d3d11] Move some DXGI presenter options to D3D11 * [d3d11] Add new D3D11 swap chain code ------------------------------------------------------------------- Mon Oct 22 18:10:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181022: * [dxvk] Update blend constants only when they have actually changed * setup_dxvk: don't install by default * Spoof AMD GPU for Assetto Corsa Competizione * [util] Spoof AMD GPU for SAO FB ------------------------------------------------------------------- Wed Oct 17 19:53:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181017: * [d3d11] Implicitly flush when queueing an event query * [d3d11] Do not use QueryInterface to get query pointers * [d3d11] Remove some flush points * [d3d11] Don't mark context methods as 'final' * package-release.sh: exit on errors * [d3d11] Save a few CPU cycles in Map/MapBuffer ------------------------------------------------------------------- Mon Oct 15 20:20:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181015: * [d3d11] Show SetPredication message only when the predicate is not NULL * [dxgi] Fix scaling when swap image extent mismatches window size * [dxvk] Optimize image descriptor updates ------------------------------------------------------------------- Mon Oct 15 13:07:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181015: * [meta] Fix nonsense in README ------------------------------------------------------------------- Sun Oct 14 10:54:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.90~git20181013: * [meta] Release v0.90 ------------------------------------------------------------------- Sat Oct 13 13:00:41 UTC 2018 - pousaduarte@gmail.com - Update to version 0.81~git20181013: * [d3d10] Support pOffsets parameter in SOGetTargets * [d3d11] Implement DrawAuto method * [d3d11] Implement Stream Output queries * [d3d11] Bind transform feedback buffers in SOSetTargets * [d3d11] Allocate counter for stream output buffers * [d3d11] Report format support for stream output buffers * [d3d11] Create passthrough geometry shader if necessary * [d3d11] Implement CreateGeometryShaderWithStreamOutput * [d3d11] Set transform feedback usage, stage and access flags * [dxvk] Implement transform feedback draw call * [dxvk] Add support for transform feedback queries * [dxvk] Add structure for transform feedback stream queries * [dxvk] Add basic support for indexed queries * [dxvk] Add xfb counter write -> xfb counter read barrier * [dxvk] Implement transform feedback * [dxvk] Detect Xfb and set rasterized stream index * [dxvk] Add Xfb API stubs * [dxvk] Add Xfb context state * [dxvk] Enable transform feedback device feature if available * [dxvk] Query transform feedback device properties if available * [dxvk] Enable VK_EXT_transform_feedback * [dxvk] Add definitions for transform feedback entry points * [dxvk] Add support for transform feedback access flags * [dxvk] Update Vulkan headers * [dxbc] Implement passthrough geometry shader * [dxbc] Implement Xfb output declarations and setup * [dxbc] Add Xfb decorations * [dxbc] Add support for multiple streams in geometry shaders * [dxbc] Add Xfb structures to DxbcModuleInfo * [dxvk] Implement getShader method for graphics pipelines ------------------------------------------------------------------- Fri Oct 12 17:46:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.81~git20181012: * Revert "[d3d10] Implement ID3D10Multithread" * [util] Re-enable D3D10 for Bioshock * [d3d10] Implement ID3D10Multithread * [d3d10] Respect D3D10_CREATE_DEVICE_SINGLETHREADED flag * [d3d10] Lock device on context operations * [util] Spoof AMD GPU for Dauntless and Redout. It silences some nvapi related warnings and improves performance on both titles by up to 10%. Also fixes a random crash on Redout. * [util] Spoof AMD card for Star Citizen * [meta] Don't hardcode the default libdir ------------------------------------------------------------------- Wed Oct 10 12:41:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.81~git20181009: * [dxgi] *Actually* silence WaitForVBlank warning * [d3d11] Add option to disable deferred context mapping speed hack * [dxgi] Silence WaitForVblank warning * [dxbc] rename DxbcProgramVersion to DxbcProgramInfo * [dxbc] Drop unused major/minor from DxbcProgramVersion * [dxvk] Refactor indirect draw/dispatch commands ------------------------------------------------------------------- Sun Oct 07 19:45:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.81~git20181007: * [dxvk] Fix missing buffer tracking for indirect draw calls * [dxvk] Fix missing indirect dispatch barriers and tracking * [dxvk] Reduce CPU overhead of indirect draw calls ------------------------------------------------------------------- Sat Oct 06 23:19:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.81~git20181006: * [dxgi] Fix undefined display mode format for display mode transitions * [meta] Release v0.81 ------------------------------------------------------------------- Fri Oct 05 11:38:38 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20181004: * [vr] Cosmetic code cleanup * [vr] Load native openvr library on winelib builds ------------------------------------------------------------------- Tue Oct 02 13:03:26 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20181001: * [d3d11] Implement DiscardView and DiscardResource for images * [dxvk] Add discardImage method * [build] Indicate the working tree status in the version string. (#679) * [dxvk] Minor internal buffer API cleanup * [dxvk] Don't reset unused bind points * [dxvk] Make DxvkBuffer destructor explicit ------------------------------------------------------------------- Sat Sep 29 18:11:53 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20180929: * [d3d11] Don't set meta-resolve usage flags for depth buffers * [dxgi] Add option to force-enable MAILBOX present mode * [build] Build 32-bit binaries with SSE2 instruction set * [d3d11] Skip CopyResource when src and dst resource are the same * [d3d11] Skip ResolveSubresource when dst and src resource are the same * [dxvk] Fix stencil state assignment * [d3d11] Optimize UAV binding * [dxvk] Refactor resolve ops * [d3d11] Enable usage flags for meta copy formats * [dxvk] Use new meta copy for depth <> color image copies * [dxvk] Add meta copy code * [dxvk] Add meta copy shaders * [dxgi] Implement slightly better QueryResourceResidency stub ------------------------------------------------------------------- Wed Sep 26 18:15:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20180925: * [dxvk] Flush queued barriers when binding any frame buffer * [dxvk] Simplify pipeline object locking ------------------------------------------------------------------- Tue Sep 25 12:54:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20180925: * [dxvk] Don't do image-to-buffer copies for multisampled images * [d3d11] Fix incomplete usage mask for buffer UAVs * [dxvk] Renove redundant vkDestroyPipeline ------------------------------------------------------------------- Mon Sep 24 18:11:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20180924: * [dxvk] Check whether the vertex binding / attribute count is valid * [d3d10] Disable D3D10 support for Bioshock * [d3d10] Add option to enable or disable D3D10 support ------------------------------------------------------------------- Sun Sep 23 20:50:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.80~git20180923: * [dxvk] Avoid buffer slice copy when binding index/vertex buffers * [meta] Release v0.80 * [meta] Update README * [dxvk] Enable state cache for compute pipelines * [dxvk] Add compute shader support to pipeline state cache * [d3d11] Use state cache * [dxvk] Enable state cache * [dxvk] Add pipeline state cache * [dxvk] Lock pipeline object while compiling one pipeline * [dxvk] Add method to retrieve shader key from shader module * [util] Add convenience method for SHA1 hash compulation * [dxvk] Refactor pipeline stat counters * [dxvk] Refactor pipeline object constructors * [dxvk] Remove redundant declaration ------------------------------------------------------------------- Thu Sep 20 18:26:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.72~git20180920: * Revert "[dxvk] Move command submission to separate thread" * [dxvk] Optimize retrieval of dynamic buffer offsets * [dxvk] Move command submission to separate thread ------------------------------------------------------------------- Thu Sep 20 12:28:53 UTC 2018 - pousaduarte@gmail.com - Update to version 0.72~git20180920: * [dxvk] Eliminate buffer slice copy when updating buffer descriptors * [meta] Remove redundant linker entries for the utils library ------------------------------------------------------------------- Wed Sep 19 18:08:26 UTC 2018 - pousaduarte@gmail.com - Update to version 0.72~git20180919: * [meta] Clarify device filter usage and fix typo * [d3d11] Make D3D11 context methods more robust to null pointers * [d3d11] Handle pResource == nullptr case during view creation ------------------------------------------------------------------- Tue Sep 18 23:24:46 UTC 2018 - pousaduarte@gmail.com - Update to version 0.72~git20180918: * [d3d11] Don't allow creation of 0x0-sized textures * [d3d11] Expose Feature Level 11_1 * [d3d11] Implement and advertize support for CopyWithOverlap feature * [dxvk] Add copyBufferRegion and copyImageRegion methods * [d3d11] Advertize support for the ForcedSampleCount rasterizer state * [dxvk] Implement backend support for D3D11 forced sample count * [d3d11] Replace shader debug name with shader key * [d3d11] Replace D3D11ShaderKey with DxvkShaderKey * [dxvk] Add new DxvkShaderKey to represent unique shader key * [dxvk] Avoid more unnecessary copies of ref-counted pointers * [dxvk] Avoid buffer slice copy when tracking buffer views * Revert "[d3d11] Avoid unnecessary buffer slice copy when mapping buffer" * [d3d11] Avoid unnecessary buffer slice copy when mapping buffer * [dxvk] Optimize ref counting around resource tracking * [dxvk] Rename DxvkBindingState -> DxvkBindingMask * [dxvk] Do not map allocations that don't need a HOST_VISIBLE memory type * [d3d11] Fix reported RowPitch/DepthPitch for mapped buffers * [dxvk] Do not store a strong reference from adapter to instance * [dxgi] IsCurrent is not actually a stub * [dxvk] Simplify graphics pipeline instance management * [dxvk] Fix some legacy cruft around Vulkan instance creation ------------------------------------------------------------------- Fri Sep 14 19:28:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.72~git20180914: * [meta] Release 0.72 * [dxvk] Remove all remaining pipecompiler code * [dxvk] Remove asynchronous pipeline compiler * [util] Improve logging of configuration options * [meta] Actually remove all wine output from setup script ------------------------------------------------------------------- Fri Sep 14 12:53:18 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180914: * [meta] Remove colors from setup script * [d3d11] Test streamout queries + additional output components * [tests] Small tweaks ------------------------------------------------------------------- Thu Sep 13 23:38:20 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180913: * [dxvk] Remove option for asynchronous shader compilation * [dxbc] Fix missing hull shader input declarations * [tests] Add tessellation shaders to triangle demo * [dxbc] Use temporary array for per-patch hull shader outputs * [dxvk] Only mark render targets as used on draw calls ------------------------------------------------------------------- Wed Sep 12 18:15:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180912: * [dxvk] Remove redundant parameter from DxvkCommandList constructor ------------------------------------------------------------------- Wed Sep 12 13:08:53 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180912: * [util] Spoof Nvidia card for Assassin's Creed Syndicate * [dxvk] Fix query type enablement in query manager * [d3d11] Fix Begin/End for all queries other than Event and Timestamp * [dxvk] Rename useAsyncPipeCompiler -> asyncPipeCompiler * [dxvk] Introduce new 'Created' state for queries * [dxvk] Enable device features for VK_EXT_vertex_attribute_divisor * [dxvk] Query new Vertex Attribute Divisor features * [dxvk] Collect info about the supported revisions of an extension * [meta] Update Vulkan headers to 1.1.84 * [dxvk] Implement render target state tracking for async compilation * [dxvk] Add methods to track render target view usage * [dxvk] Add method to retrieve current frame number * [dxvk] Use all but two available threads for async pipeline compilation * [util] Implement dxvk::thread::hardware_concurrency * [dxvk] Repurpose asynchronous pipeline compiler * [d3d11] Add option to enforce anisotropic filtering * [dxbc] Remove emitCsSystemValueLoad * [d3d11] Added option to limit tessellation factors * [dxgi] Add option to override the sync interval * [dxgi] Add option to change the back buffer count * [dxgi] Use DXGI back buffer count for the Vulkan swap chain * [dxvk] Fix initial query state ------------------------------------------------------------------- Sun Sep 09 10:11:57 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180908: * [util] Spoof AMD card for Batman: Arkham Knight (#627) ------------------------------------------------------------------- Sat Sep 08 11:38:34 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180908: * Spoof AMD card for GTA V * [util] Spoof AMD card for Dragon Quest XI * [dxbc] Make emitRawBufferLoad more readable ------------------------------------------------------------------- Tue Sep 04 13:18:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180904: * [d3d11] Fix layer count for 3D RTVs with non-zero base mip level * [dxvk] Fix layer count for 2D views into 3D images ------------------------------------------------------------------- Mon Sep 03 18:53:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180903: * [dxbc] Apply Modulo 31 to bit counts and offsets (shr/shl/bfe/bfi) ------------------------------------------------------------------- Sun Sep 02 18:39:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.71~git20180902: * [meta] Release v0.71 * [d3d11] Synchronize CS thread after flush when waiting for resource * [dxvk] Remap spec constant ranges * [dxvk] Don't change spec constant IDs that are no valid resource slots * [d3d11] Pass format swizzle to render target views * [dxbc] Implement pixel shader output component mapping * [spirv] Support OpVectorExtractDynamic instruction * [dxvk] Add spec constants for pixel shader output mapping * [dxvk] Add output component mask state to graphics pipelines * [dxvk] Fix up component swizzle for render target views ------------------------------------------------------------------- Sat Sep 01 10:49:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180831: * Revert "[util] Limit device memory size to 4095 MB for Life is Feudal MMO" * [dxvk] Enable pipeline statistics queries around compute shaders * [dxvk] Refactor query management * [util] Handle WCHAR strings in str::format. * [build] Use d3dcompiler as lib name when linking to d3dcompiler_47 in winelib build. * [d3d11] Remove old UAV counter buffer implementation * [d3d11] Use D3D11CounterBuffer for UAV counters * [d3d11] Add more general counter buffer allocator ------------------------------------------------------------------- Tue Aug 28 13:21:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180828: * [build] Don't run wine during winelib build process * [build] Don't run wine during winelib build process * [d3d10] Fix d3d11 dependecy for winelib build * [dxvk] Add CS chunk pool * [dxvk] Simplify discardBuffer access flags * [dxbc] End functions correctly even if last instruction is not 'ret' * [meta] Update README * [dxvk] Add device filter ------------------------------------------------------------------- Mon Aug 27 13:03:59 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180826: * [dxgi] Don't use FIFO present mode if IMMEDIATE is not available * [dxvk] Fix clear compute shaders for 2D array views ------------------------------------------------------------------- Sun Aug 26 16:54:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180826: * [dxgi] Fix format parameter in CheckImageFormatSupport * [dxgi] Log display mode changes * [d3d10] Fix resource type for buffers. ------------------------------------------------------------------- Sat Aug 25 16:52:34 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180825: * [util] Limit device memory size to 4095 MB for Life is Feudal MMO * [dxgi] Add option to limit reported device memory size ------------------------------------------------------------------- Thu Aug 23 20:35:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180822: * [d3d10] Implement Get/SetTextFilterSize using the behaviour D3D10 exhibits (#587) ------------------------------------------------------------------- Sat Aug 18 13:05:49 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180818: * [meta] Copy verb even when using --no-package ------------------------------------------------------------------- Fri Aug 17 20:29:58 UTC 2018 - pousaduarte@gmail.com - Update to version 0.70~git20180817: * [build] Provide build-wine32.txt file. * [build] Use native Vulkan ABI for winelib builds (#520) * [util] Add log message when loading a configuration file * [meta] Allow setup script to run from other working directories * [meta] Release 0.70 * [dxgi] Remove dxgi.fakeDx10Support option * [meta] Update README * [meta] Add custom winetricks verb to set up DXVK * [meta] wine_utils -> utils * Revert "[dxbc] Work around OpControlBarrier issue on radv 18.2-git" ------------------------------------------------------------------- Thu Aug 16 13:20:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.65~git20180816: * [build] Mute dllexport GCC warnings for winelib * [d3d11] Fix silly GenerateMips bug * [d3d11] Fix interface query for ID3D11Predicate * [d3d11] fixed compilation with MinGW-headers 6.0.0 or greater * [tests] fix dxbc-disasm with MSVC * [build] partially revert previous d3dcompiler related change * [meta] Revert accidental d3dcompiler version change * [d3d11] Enable ExtendedDoublesShaderInstructions * [dxbc] Implement DtoI, DtoU, ItoD and UtoD * [dxbc] Implement DDiv, DFma and DRcp * [dxbc] Add definitions for extended double instructions * [d3d11] Implement ID3D11DeviceContext1::ClearView * [dxvk] Support render target views in ClearImageView * [dxvk] Accept VkClearValue in DxvkContext::clearImageView * [d3d11] Silence warning about GenerateMips being called on buffers * [build] reduce the number of d3dcompiler versions * [d3d10] Add some range checks to resource binding functions * [d3d10] added missing __stdcall * [d3d10] Fix crash in CreateDepthStencilView when pDesc is null ------------------------------------------------------------------- Mon Aug 13 19:01:54 UTC 2018 - pousaduarte@gmail.com - Update to version 0.65~git20180813: * [meta] Fix formatting errors * [meta] Update README * [meta] Add D3D10 support to setup script and package-release script * [d3d10] Implement D3D10ShaderReflection * [d3d10] Implement more d3d10.dll functions using D3DCompiler * [d3d10] Implement CheckFormatSupport * [d3d10] Implement (VS|GS|PS)(Set|Get)Shader * [d3d10] Implement D3D10Shader * [d3d10] Implement (Set|Get)Predication * [d3d10] Implement D3D10Query * [d3d10] Implement ClearRenderTargetView and ClearDepthStencilView * [d3d10] Implement OM(Set|Get)RenderTargets * [d3d10] Implement D3D10CreateDepthStencilView * [d3d10] Implement D3D10RenderTargetView * [d3d10] Implement GenerateMips * [d3d10] Implement (VS|GS|PS)(Set|Get)ShaderResources * [d3d10] Implement D3D10ShaderResourceView * [d3d10] Add GetD3D10ResourceFromView and GetD3D10Resource helpers * [d3d10] Implement RS(Set|Get)State * [d3d10] Implement D3D10RasterizerState * [d3d10] Implement OM(Set|Get)DepthStencilState * [d3d10] Implement D3D10DepthStencilState * [d3d10] Implement OM(Set|Get)BlendState * [d3d10] Implement D3D10BlendState * [d3d10] Implement IA(Set|Get)InputLayout * [d3d10] Implement D3D10InputLayout * [d3d10] Implement resource update, copy and resolve functions * [d3d10] Add GetD3D11Resource helper * [d3d10] Implement (VS|GS|PS)(Set|Get)Samplers * [d3d10] Implement D3D10SamplerState * [d3d10] Implement (VS|GS|PS)(Set|Get)ConstantBuffers * [d3d10] Implement SOSetTargets and SOGetTargets * [d3d10] Implement IA(Set|Get)(Vertex|Index)Buffers * [d3d10] Implement D3D10Buffer * [d3d10] Implement RS(Set|Get)(Viewports|ScissprRects) * [d3d10] Implement IASet|GetPrimitiveTopology * [d3d10] Implement D3D10 texture interfaces * [dxgi] Report ID3D10Device and ID3D10Device1 as supported * [d3d10] Add D3D10Device stub * [d3d10] Add build files and implement D3D10CreateDevice functions * [dxgi] SetFullscreenState succeeds if not changing state * [dxgi] Don't use std::mbstowcs. ------------------------------------------------------------------- Sun Aug 12 11:37:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.65~git20180812: * [meta] Release v0.65 ------------------------------------------------------------------- Sat Aug 11 13:27:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180811: * [dxgi] Fix BGRA view format compatibility * [dxvk] Fix base pipeline assignment when compipling new pipelines * [dxgi] Re-enable SRGB-to-UNORM compatibility ------------------------------------------------------------------- Fri Aug 10 16:42:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180810: * [meta] Update README * [util] Update default per-app quirks * [d3d11] Enable drawIndirectFirstInstance for FL11_0 and higher * [dxbc] Fix case labels when case blocks are terminated with ret * [d3d11] Fix structured buffer view validation * [d3d11] Report bind flags instead of usage when view creation fails * [d3d11] Add meaningful error messages when view creation fails * [d3d11] Add format and resource type to D3D11_COMMON_RESOURCE_DESC * [d3d11] Validate buffer view format compatibility * [d3d11] Validate image view format compatibility correctly * [d3d11] Added GetBufferFormatFeatures and GetImageFormatFeatures helpers * [d3d11] Validate buffer view bind flags * [d3d11] Validate image view bind flags * [d3d11] Add GetImageUsageFlags and GetBufferUsageFlags helpers * [d3d11] Use user config to determine the maximum feature level ------------------------------------------------------------------- Thu Aug 09 16:57:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180809: * [d3d11] Allow creation of SRGB textures with D3D11_BIND_UNORDERED_ACCESS ------------------------------------------------------------------- Wed Aug 08 11:22:46 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180807: * [dxgi] Fix resolve image usage flags * [dxgi] Add custom device/vendor IDs to DxgiOptions * [util] Move getAppConfig and getUserConfig to Config class * [meta] Update README * [dxvk] Use global user config for backend options * [meta] Update README * [d3d11] Use global user config for D3D11 options * [dxgi] Use global user config for DXGI options * [dxvk] Load user config as well as per-app options in DxvkInstance * [util] Add classes and functions to support configuration files ------------------------------------------------------------------- Sun Aug 05 21:59:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180805: * [d3d11] Do not hold strong references to the ID3D11Resource in views * [d3d11] Add private ref count helpers for ID3D11Resource * [d3d11] Do not keep a strong reference to the swap chain back buffer * [util] Add private reference count to COM object * [d3d11] Refactor Unordered Access View Creation * [d3d11] Refactor Shader Resource View Creation * [d3d11] Refactor Render Target View Creation * [d3d11] Refactor Depth-Stencil View Creation * [d3d11] Use new resource helper functions during view creation * [d3d11] Add common resource helper functions * [d3d11] Introduce GetCommonBuffer helper * [d3d11] Move BufferInfo struct into D3D11Buffer * [tests] Restore old d3d11-triangle behaviour ------------------------------------------------------------------- Sat Aug 04 20:43:48 UTC 2018 - pousaduarte@gmail.com - Update to version 0.64~git20180804: * [dxgi] Relax IDXGISwapChain thread safety * [meta] Release v0.64 * [dxbc] Work around OpControlBarrier issue on radv 18.2-git * [dxvk] Implement native discardBuffer function in the backend * [d3d11] Implement copy flags for CopySubresourceRegion1 / UpdateSubresource1 * [d3d11] Implement DiscardResource for buffers * [d3d11] Refactor UAV counter buffer allocator * [d3d11] Fix border color mapping for opaque white ------------------------------------------------------------------- Wed Aug 01 12:15:28 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180801: * [dxbc] Fix sample location order for 2xMSAA case * [dxvk] Remove unnecessary barrier recording before compute dispatch * [dxvk] Add extended device feature structure * [dxvk] Add extended device info structure ------------------------------------------------------------------- Tue Jul 31 11:35:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180730: * [dxbc] Actually set "icb" as the debug name of the ICB ------------------------------------------------------------------- Mon Jul 30 19:19:49 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180730: * [dxbc] Fix incorrect pointer type when loading from baked ICBs * [dxbc] Map large ICBs to a constant buffer * [d3d11] Remove DXVK_SHADER_READ_PATH * [d3d11] Create shader constant buffer if necessary * [dxvk] Introduce concept of shader constants * [dxvk] Reconfigure bindings * [d3d11] Fix compiler warning * [d3d11] Refactor shader binding ------------------------------------------------------------------- Sun Jul 29 11:42:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180728: * [dxvk] Include vector inheaders that use it. * [build] Improve winelib builds * add winelib build support to the setup script ------------------------------------------------------------------- Tue Jul 24 12:28:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180723: * [dxvk] Refactor Vulkan extension management * [dxvk] Load function pointers for VK_KHR_get_physical_device_properties2 * [d3d11] Optimize WaitForResource behaviour when resource is already idle * [d3d11] Refactor resource initialization ------------------------------------------------------------------- Mon Jul 23 12:22:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180723: * [build] Don't use full paths in build files. ------------------------------------------------------------------- Sun Jul 22 19:54:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.63~git20180722: * [util] Fix reference counting for thread objects * [util] Fix Win32 thread helper * [meta] Release 0.63 * [util] Code cleanup for winegcc stuff * [build] Fix compilation on MSVC (#505) * [dxgi] Do not use MUTABLE_FORMAT_BIT for SRGB images * [dxvk] Use VkImageViewUsageCreateInfoKHR when creating image views * Revert "[dxvk] Bump maximum number of command buffers in flight to 16" * [dxvk] Make DxvkEvent lock-free ------------------------------------------------------------------- Fri Jul 20 12:13:58 UTC 2018 - pousaduarte@gmail.com - Update to version 0.62~git20180720: * [dxgi] Make faking Dx10 support a per-app option * [dxvk] Bump maximum number of command buffers in flight to 16 * [dxgi] Synchronize presentation to enforce maximum frame latency * [dxgi] Implement IDXGIDevice::SetMaximumFrameLatency * [dxvk] Add DxvkEvent::wait method * [dxvk] Relax VK_EXT_vertex_attribute_divisor requirement * [dxvk] Optimize buffer renaming * [d3d11] Import dxgi by -l instead of directly specifying library name. * [build] Use -mwindows to link executables. * [d3d11] Move D3D11ImmediateContext constexpr values to .cpp file * Don't use std::thread. * [util] Don't use std::wstring. * [util] Reimplement fromws using WideCharToMultiByte and system codepage. * [util] Remove getTempDirectory * [build] Use .spec files instead of .def files in winelib build * [build] Explicitly specify .dll and .exe extensions in winelib build * [buid] Support linking system DLLs in winelib builds * [build] Define NOMINMAX for all toolchains ------------------------------------------------------------------- Tue Jul 17 18:49:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.62~git20180716: * Revert "[dxgi] Support multiple outputs per adapter" * [dxgi] Support multiple outputs per adapter ------------------------------------------------------------------- Sat Jul 14 11:31:23 UTC 2018 - pousaduarte@gmail.com - Update to version 0.62~git20180714: * [general] Update Vulkan headers to 1.1.80 * [dxgi] Fixed nonsense compiler warning with some GCC versions * [meta] Release v0.62 ------------------------------------------------------------------- Fri Jul 13 19:06:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180712: * [dxgi] Use back buffer size to determine fullscreen resolution ------------------------------------------------------------------- Thu Jul 12 13:12:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180712: * [d3d11] Fake SO support for F1 2015, Mafia 3 * Revert "[dxvk] Disable image format list" * [build] Moved git command into the command list (#493) * [hud] Add option to show DXVK version * [build] Extract version number from git if available * [dxvk] Require VK_KHR_get_physical_device_properties2 * [vr] Load OpenVR API DLL if necessary ------------------------------------------------------------------- Tue Jul 10 08:03:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180710: * [dxvk] Track lifetime of framebuffer attachments * [d3d11] Reset implicit flush timer only when actually flushing * [dxvk] Pick memory chunk size dynamically * [dxvk] Fix tzcnt return value when source value is 0 * [dxvk] Add access flags to external subpass dependencies again * [dxvk] Fixed external subpass dependencies * [d3d11] Fix log spam when an application uses DiscardView ------------------------------------------------------------------- Sun Jul 08 12:37:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180706: * [dxvk] Fix deferred depth-stencil clears * [dxvk] Remove clear rect parameter from clearRenderTarget ------------------------------------------------------------------- Fri Jul 06 13:16:55 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180705: * [dxvk] Disable image format list ------------------------------------------------------------------- Wed Jul 04 20:06:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180704: * [meta] Add RELEASE file containing the latest binary version number ------------------------------------------------------------------- Wed Jul 04 12:46:38 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180703: * [d3d11] Set proper view format list for typed UAVs * [d3d11] Pass image format family to the backend * [dxvk] Pass image format list to the driver * [dxvk] Require VK_KHR_image_format_list * [dxgi] Add method to query the family of a given format * [dxgi] Added format family list ------------------------------------------------------------------- Mon Jul 02 18:15:14 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180702: * [dxgi] Fix 'auto' declaration in FindClosestMatchingMode * [vr] Initialize and shut down OpenVR if necessary * [vr] Refactor compositor initialization ------------------------------------------------------------------- Sun Jul 01 21:10:05 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180701: * [dxbc] Respect number of input/output components * WIP: Typed shader interfaces * [dxvk] Remove unnecessary Parameter (#465) ------------------------------------------------------------------- Fri Jun 29 18:40:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.61~git20180629: * [d3d11] Issue warning when using a command list more than once * [d3d11] Fix usage and access flags for multisampled images ------------------------------------------------------------------- Thu Jun 28 12:16:13 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180628: * [dxvk] Optimize image layout transitions * [dxvk] Fix potential layout transition issues with depth-stencil images * [dxbc] Decorate untyped write-only UAVs as NonReadable * [hud] Added some missing documentation * [hud] Render HUD directly to swap chain image * [d3d11] Tweak implicit flush limits * [d3d11] Add more implicit flush points ------------------------------------------------------------------- Wed Jun 27 18:12:46 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180627: * [dxbc] Implement SV_ViewportID as pixel shader input * [vr] Maintain global extension sets * [dxvk] Lock queue around acquireNextImage * [dxvk] Move adapter list to the DXVK instance * [build] Disable unity builds ------------------------------------------------------------------- Mon Jun 25 17:15:26 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180625: * [dxvk] Remove unused rasterizer discard state flag * [d3d11] Do not use MUTABLE_FORMAT_BIT for strictly typed formats ------------------------------------------------------------------- Sun Jun 24 11:27:51 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180624: * [dxvk] Implement dedicated allocation (#448) ------------------------------------------------------------------- Sat Jun 23 19:59:41 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180623: * [dxbc] Consider stream index in signature entry lookup * [tests] Fix compiler error with the DxbcModuleInfo struct * [dxbc] Implement EmitThenCut / EmitThenCutStream * [dxbc] Parse OSG5 chunk for Shader Model 5 geometry shaders * [dxbc] Add DxbcModuleInfo struct ------------------------------------------------------------------- Sat Jun 23 12:00:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.60~git20180623: * [dxvk] Implement shader-based meta-resolve operation * [dxvk] Added separate flags for signed and unsigned integer formats * [dxvk] Add shaders for new meta-resolve operation * [dxvk] Use dynamic offsets for both graphics and compute pipelines * [dxvk] Implement support for dynamic buffer binding offsets * [dxvk] Add context state flags for descriptor set and offset updates * [dxvk] Allocate descriptor sets with dynamic descriptor support * [dxvk] Add DxvkOptions struct for quick lookup of features/limits * [dxvk] Implement pipeline layout support for dynamic descriptors * [dxvk] Discard slices from old physical buffers ------------------------------------------------------------------- Thu Jun 21 22:40:05 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180621: * [util] Set thread names for DXVK's own threads * [d3d11] Fix image aspect mask for typeless resolve * [d3d11] Fix issue with back buffer creation ------------------------------------------------------------------- Tue Jun 19 22:51:16 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180619: * [tests] Added basic Stream Output test * [d3d11] Do not flush on every call to GetData * [d3d11] Fix render target layouts for linar tiling * [dxvk] Optimize barriers around vkCmdCopyImage * [dxbc] Fix compiler warning * [dxvk] Optimized barrier batching around compute shader execution ------------------------------------------------------------------- Sat Jun 16 19:42:20 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180616: * [d3d11] Fake streamout support for Final Fantasy XV * [dxvk] Optimize buffer memory barrier batching * [dxvk] Rename DxvkResourceAccessType to DxvkAccess * [d3d11] Use clearBuffer to initialize UAV counters ------------------------------------------------------------------- Fri Jun 15 23:07:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180615: * [d3d11] Implement render pass spilling for UAV rendering ------------------------------------------------------------------- Thu Jun 14 18:03:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180614: * [dxgi] FindClosestMatchingMode: Handle Width/Height = 0 case * [d3d11] Report correct timer frequency for TIMESTAMP_DISJOINT queries ------------------------------------------------------------------- Wed Jun 13 10:56:59 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180612: * Revert "[dxvk] Require VK_EXT_shader_viewport_index_layer" * [dxgi] Map typeless formats to their UNORM variants by default * [dxbc] Remove workarounds for the old Nvidia shader compiler * [dxvk] Require VK_EXT_shader_viewport_index_layer * [dxvk] Sort extension names in alphabetical order ------------------------------------------------------------------- Mon Jun 11 22:34:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180611: * [dxvk] Require VK_KHR_maintenance2 and VK_EXT_vertex_attribute_divisor * [dxbc] Fix index returned by ImmAtomicConsume instruction * [d3d11] Add ID3DUserDefinedAnnotation stub * [d3d11] Implement CheckCounterInfo and related stubs ------------------------------------------------------------------- Sun Jun 10 10:58:35 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180610: * [d3d11] Reduce log spam about UAV rendering ------------------------------------------------------------------- Sat Jun 09 12:56:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180608: * [d3d11] Remove GetData do-not-flush workaround for Fallout 4 * [d3d11] Flush implicitly when GetData returns S_FALSE * [d3d11] Added warning that UAV rendering might not work as expected * [d3d11] Move GetData implementation to D3D11ImmediateContext ------------------------------------------------------------------- Thu Jun 07 18:51:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.54~git20180607: * [dxbc] Fixed issue with FtoD instruction picking an incorrect type * [d3d11] Enable 64-bit math feature * [dxbc] Implemented 64-bit compare instructions * [dxbc] Implemented 64-bit Vector ALU instructions * [dxbc] Implement DtoF and FtoD instructions * [spirv] Added OpFConvert instruction * Revert "[dxvk] Increase memory chunk size to 32 MiB" * [dxvk] Improve swap chain format fallback logic * [dxvk] Added format flag to mark SRGB color formats * [util] Add == and != operator to Flags * fix MSVC compile error with function pointer type declaration (#422) ------------------------------------------------------------------- Wed Jun 06 18:41:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180606: * [dxvk] Removed support for depth bounds test * [dxvk] Make depth bias a dynamic state * [dxvk] Increase memory chunk size to 32 MiB * [d3d11] Implement new auto-flush heuristic * [dxvk] Make number of queued submissions available to DXVK ------------------------------------------------------------------- Tue Jun 05 13:07:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180605: * [vr] Add missing license file * [vr] Silence non-virtual destructor warnings on GCC * [vr] Query Vulkan extensions for OpenVR at runtime * [vr] Add OpenVR loader * [vr] Added OpenVR header ------------------------------------------------------------------- Mon Jun 04 13:09:43 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180603: * Allow FarCry 5 to use D3D11_MAP_FLAG_DO_NOT_WAIT (#416) ------------------------------------------------------------------- Sun Jun 03 15:58:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180602: * Revert "[dxbc] Bound-check dynamically indexed constant buffer reads" ------------------------------------------------------------------- Sat Jun 02 11:31:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180602: * [dxvk] Fixed uninitialized value in meta-resolve ------------------------------------------------------------------- Fri Jun 01 17:14:31 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180601: * [dxbc] Support RenderTargetId and ViewportId in Vertex/Domain shaders * [dxvk] Enable VK_EXT_shader_viewport_index_layer if available * [spirv] Update SPIR-V headers * [dxbc] Fix incorrect OpSelectionMerge instruction ------------------------------------------------------------------- Thu May 31 10:06:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180531: * [dxbc] Bound-check dynamically indexed constant buffer reads ------------------------------------------------------------------- Wed May 30 12:56:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.53~git20180530: * [d3d11] Fix vertex attribute offset with D3D11_APPEND_ALIGNED_ELEMENT * [dxvk] Allow overcommitting non-device local memory * [d3d11] Allocate DYNAMIC buffers on device-local host-visible memory * [dxvk] Refactor memory allocator ------------------------------------------------------------------- Tue May 29 10:32:40 UTC 2018 - opensuse-packaging@opensuse.org - Update to version 0.53~git20180529: * [dxvk] Apply dynamic state at draw time * [dxgi] Support SyncInterval values > 1 * [dxvk] Added correct element size to depth-only and stencil-only formats ------------------------------------------------------------------- Sun May 27 16:16:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.52~git20180527: * [d3d11] Chjeck whether input layouts are identical * [d3d11] Enable shaderStorageImageMultisample if the device supports it * [dxvk] Emit dynamic state only if a pipeline is bound * [dxbc] Implement deferred kill operation * [dxbc] Make UAV stores and atomics conditional * [dxbc] Run analyzer before creating compiler object * [dxbc] Add per-device option for deferred kills * [dxbc] Scan for discard and derivative instructions ------------------------------------------------------------------- Sat May 26 17:09:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.52~git20180526: * [dxvk] Remove unnecessary include * [dxvk] Use new spec constant structure for pipeline compilation * [dxbc] Implement sampleinfo instruction for rasterizer * [dxvk] Add global specialization constant data structures * [spirv] Add support for 32-bit specialization constants * [d3d11] Overwatch: Fake success in CreateGeometryShaderWithStreamOutput * [dxvk] Align length when clearing entire buffer * [dxvk] Track image (rather than the view) when generating mip maps * [dxvk] Use new mip map generator * [dxvk] Add new mip map generator * [dxvk] Add shaders for mip map generation * [dxvk] Added convenience equal checker for unordered maps ------------------------------------------------------------------- Fri May 25 12:08:35 UTC 2018 - pousaduarte@gmail.com - Update to version 0.52~git20180525: * [d3d11] Validate and correct scissor rects * [general] Added DXUP reference to README ------------------------------------------------------------------- Thu May 24 12:42:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.52~git20180524: * [dxgi] Add option for deferred surface creation * [dxgi] Add app-specific DXGI options * [dxbc] Remove DxbcImageInfo::layered property * [dxbc] Remove TexCube -> TexCubeArray workaround * [dxbc] Remove Tex2D -> Tex2DArray workaround * [dxvk] Create image views for all supported view types * [dxgi] Reduce reported VRAM on 32-bit platforms * [dxgi] Refactor Vulkan swap chain and surface creation * [dxgi] Add IDXGIFactory2 to supported interfaces * [dxgi] Implemented IDXGISwapChain1 * [dxgi] Fixed error message formatting in DxgiDevice * [dxgi] Stubbed out IDXGIFactory2 * [dxgi] Stubbed out IDXGISwapChain1 * [dxgi] Implemented IDXGIAdapter2 ------------------------------------------------------------------- Wed May 23 12:22:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180522: * [d3d11] Pre-clear buffers with D3D11_USAGE_DEFAULT * [d3d11] Refactor InitTexture method ------------------------------------------------------------------- Tue May 22 17:40:31 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180522: * [dxbc] Implement geometry shader instancing ------------------------------------------------------------------- Tue May 22 12:18:26 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180522: * [dxvk] Use only one extra thread for async pipeline compilation * [d3d11] Optimized buffer mapping on deferred contexts ------------------------------------------------------------------- Sat May 19 11:25:46 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180519: * Fix tzcnt intrinsic on MSVC (#381) * [dxbc] SampleMask does not depend on SampleRateShading ------------------------------------------------------------------- Fri May 18 20:50:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180518: * [dxbc] Do not emit empty 'else' blocks ------------------------------------------------------------------- Wed May 16 22:47:27 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180517: * [general] Update README * [dxvk] Remove ability to enable instance layers * [dxvk] Implement name set merging * [dxvk] Refactor the way instance extensions are enabled * [dxvk] Make vk::NameSet more versatile * [dxvk] Enumerate discrete GPUs before integrated GPUs ------------------------------------------------------------------- Mon May 14 12:19:16 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180514: * [d3d11] Fallout 4: Force Flush on GetData calls * [dxvk] Remove std::vector from DxvkDataBuffer ------------------------------------------------------------------- Sun May 13 16:22:54 UTC 2018 - pousaduarte@gmail.com - Update to version 0.51~git20180513: * [dxvk] Make use of the asynchronous pipeline compiler optional * [dxvk] Log start/stop of pipe compiler worker threads * [dxvk] Use derivative pipelines again * [dxvk] Do not log invalid pipeline state * [dxvk] Use VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT * [dxvk] Added DxvkPipelineCompiler * [dxvk] Add ability to hold two pipeline handles to pipeline instances * [dxvk] Implement DxvkGraphicsPipelineInstance ------------------------------------------------------------------- Sun May 13 13:10:20 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180513: * [dxvk] Increase update buffer size * [dxvk] Fix update buffer allocation size ------------------------------------------------------------------- Sat May 12 18:08:03 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180512: * [dxvk] Fix query scopes * [dxvk] Reset query pools on the init buffer * [dxvk] Create a separate command buffer for initialization tasks ------------------------------------------------------------------- Sat May 12 12:18:16 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180512: * [dxbc] Fix bit scan instructions ------------------------------------------------------------------- Fri May 11 23:43:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180511: * [general] Let meson handle cflags (#362) * [util] Fix includes ------------------------------------------------------------------- Wed May 09 23:49:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180509: * [util] Remove duplicate tzcnt function * [dxvk] Move DxvkPipelineCache to DxvkPipeManager ------------------------------------------------------------------- Wed May 09 12:46:18 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180509: * [dxvk] Reimplement vertex buffer bindings * [d3d11] D3D11SamplerState: Cosmetic changes * [util] Add tzcnt function ------------------------------------------------------------------- Tue May 08 12:46:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180507: * [hud] Fixed uninitialized depth bounds values * [dxvk] Allow binding render targets of different sizes * [general] Package script: Enable unity builds by default * [dxgi] Fix reported VRAM size for 32-bit builds ------------------------------------------------------------------- Mon May 07 12:49:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.50~git20180507: * [d3d11] Implement D3D11CoreCreateDevice * [general] Test whether wine executable is actually wine * [general] More consistent use of $wine in setup script ------------------------------------------------------------------- Sun May 06 14:48:55 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180506: * [dxgi] Use per-adapter format lookup tables ------------------------------------------------------------------- Sat May 05 19:11:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180505: * [d3d11] Relaxed view format compatibility check * [d3d11] Normalize render target and depth-stencil view types * [d3d11] Fix stencil component mapping in shader resource views * [d3d11] Validate image view format compatibility * [dxgi] Added DXGI format family info ------------------------------------------------------------------- Sat May 05 09:54:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180505: * [d3d11] Validate render targets before setting them up * [d3d11] Disable VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT for typed formats * [dxgi] Report D3D10 support only when DXVK_FAKE_DX10_SUPPORT is set * [dxgi] Fix Fullscreen->Windowed transition (again) * [d3d11] Minor formatting fix * [dxgi] Use ShowWindow instead of redundant SetWindowPos call * [dxgi] Report refresh rate as a multiple of 1000 Hz ------------------------------------------------------------------- Fri May 04 12:37:48 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180504: * [d3d11] Fix stage and access mask for default constant buffers * [dxvk] Do not compute SHA-1 hash of generated shaders * [dxvk] Make shader accessible from shader module * [dxvk] Compute SHA-1 hash of generated shaders * [dxvk] Move render pass out of pipeline state vector * [util] Add method to retrieve SHA1 hashes in 32-bit chunks ------------------------------------------------------------------- Thu May 03 12:08:57 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180503: * [build] add_global_arguments -> add_project_arguments (#339) * [dxgi] Advertize support for ID3D10Device and ID3D10Device1 ------------------------------------------------------------------- Wed May 02 12:12:34 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180502: * [dxbc] Omit empty source string in OpSource instruction ------------------------------------------------------------------- Tue May 01 23:05:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180502: * [dxvk] Refactor DxvkFramebuffer and DxvkRenderpass * [dxvk] Move DxvkPipelineManager instance back to DxvkDevice * [dxvk] Made pipe manager and pipeline classes thread-safe * [dxvk] Fixed partial depth-stencil clear operations * [d3d11] Fix sampler state validation for anisotropy * [dxvk] Oprimize render target clear operations ------------------------------------------------------------------- Tue May 01 21:40:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180501: * [dxgi] Add GetDevice method to IDXGIVkInteropSurface * [dxvk] Fix DxvkContext::transformImage ------------------------------------------------------------------- Tue May 01 15:43:24 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180430: * [dxgi] Restore display mode even when the window got destroyed * [dxgi] CheckInterfaceSupport; Log interface queries * [d3d11] Fix sampler state validation for anisotropy * Revert "[dxvk] Refactor DxvkFramebuffer and DxvkRenderpass" * [dxvk] Refactor DxvkFramebuffer and DxvkRenderpass ------------------------------------------------------------------- Mon Apr 30 12:51:15 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180430: * [d3d11] Implement state block normalization (#333) ------------------------------------------------------------------- Sun Apr 29 22:36:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180429: * [dxgi] Implement display mode changes ------------------------------------------------------------------- Sun Apr 29 19:41:44 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180429: * [dxgi] LeaveFullscreenMode: Correctly restore the window size ------------------------------------------------------------------- Sun Apr 29 15:12:58 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180429: * [dxvk] Fix image layouts for images using VK_IMAGE_TILING_LINEAR * [d3d11] Use linar tiling for textures if optimal tiling is not supported ------------------------------------------------------------------- Sun Apr 29 12:07:40 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180429: * [dxvk] Set non-zero framebuffer size when there are no attachments * [d3d11] Use const ref pointer for device parameter ------------------------------------------------------------------- Sat Apr 28 12:15:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180428: * [clang-tidy] performance-move-const-arg fix (#324) ------------------------------------------------------------------- Sat Apr 28 08:55:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180428: * [dxvk] Fix native build on *nix x86_64 systems (#328) * [clang-tidy] performance-for-range-copy fix (#322) ------------------------------------------------------------------- Thu Apr 26 20:27:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180426: * [d3d11] Wire up D3D11VkInteropSurface to D3D11Texture*D classes * [d3d11] Implemented IDXGIVkInteropSurface for common textures * [d3d11] Implement IDXGIVkInteropDevice for D3D11Device * [dxgi] Added IDXGIVkInteropSurface interface * [dxgi] Added IDXGIVkInteropDevice interface * [dxvk] Export DxvkDeviceQueue from DxvkDevice ------------------------------------------------------------------- Thu Apr 26 16:47:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180426: * [dxvk] Fix potential state tracking issue when updating render targets * [dxvk] Ignore redundant render target bindings * [dxvk] Apply render target bindings at draw time * [hud] Do not explicitly use a framebuffer object ------------------------------------------------------------------- Wed Apr 25 10:54:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180423: * [dxbc] Add gs_vertex_in to the entry point interface ------------------------------------------------------------------- Mon Apr 23 12:16:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180423: * [dxvk] Rename renderPassBegin/End methods to start/spillRenderPass * [dxbc] Enable array texture hack for Dishonored 2 * [dxbc] Implemented Texture2D -> Texture2DArray mapping as a knob * [dxbc] Make DxbcOptions a set of flags * [d3d11] CopySubresourceRegion: Fix block size alignment check * [d3d11] Improved debug output for CopySubresourceRegion * [dxbc] Map 2D MS shader resource views to 2D MS Array views ------------------------------------------------------------------- Sun Apr 22 16:19:14 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180422: * [dxbc] Fix operand type of resinfo_rcp_float division * [dxbc] Fix texture component count for OpImageQueryLod * [dxbc] Fix layer count in resinfo instruction * [d3d11] Prevent mapping of depth-stencil textures * [dxbc] Map 1D and 2D textures to their respective array type v2 ------------------------------------------------------------------- Sat Apr 21 13:54:27 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180421: * Revert "[dxbc] Map 1D and 2D textures to their respective array type" * [dxbc] Map 1D and 2D textures to their respective array type * [d3d11] Fix incorrect cube face count calculation * [dxbc] Fixed incorrect shader resource slot computation ------------------------------------------------------------------- Sat Apr 21 11:12:00 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180420: * [d3d11] add some resource validation for copying resources (#305) * [dxbc] Implement precise flag * [general] Use non-default wine prefix in build script ------------------------------------------------------------------- Fri Apr 20 12:11:05 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180420: * Make hashes use correct types and fix narrowing warnings in spirv module. (#307) ------------------------------------------------------------------- Thu Apr 19 12:19:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180419: * Workaround for C++ STD not being set on MSVC/Visual Studio 2017 (#304) * [dxbc] Scan pixel shader output register type at declaration time * [dxvk] Remove std::clamp usage * [dxgi] DxgiSwapchain: Check whether window is valid * [dxgi] GetDisplayModeList: Report DXGI_MODE_SCALING_UNSPECIFIED * [dxgi] GetDisplayModeList: Sort display mode list * [dxgi] GetDisplayModeList: Do not report modes as stretched ------------------------------------------------------------------- Wed Apr 18 13:05:51 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180417: * [dxvk] Fix Nvidia driver version reporting * [d3d11] Implement 2D<->3D image copies in CopySubresourceRegion ------------------------------------------------------------------- Tue Apr 17 18:40:14 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180417: * [dxbc] Moved all operators in dxbc_names to dxvk namespace (#296) * [dxvk] Implement vertex binding divisors ------------------------------------------------------------------- Tue Apr 17 12:16:55 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180417: * [d3d11] nullptr check on Begin and End (#295) * [general] Fix issue with spaces in setup script * [hud] Added frametime graph * [hud] Added line renderer * [hud] Rename renderText -> render * [hud] HudTextRenderer -> HudRenderer ------------------------------------------------------------------- Mon Apr 16 22:43:08 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180416: * [dxbc] Remove is-bound check for constant buffer reads * [dxvk] Increase dummy buffer size to max uniform buffer size * [dxvk] Enable VK_EXT_vertex_attribute_divisor if available * [general] Update Vulkan headers ------------------------------------------------------------------- Mon Apr 16 12:43:17 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180415: * [dxbc] Write shader name to the generated SPIR-V * [dxvk] Change stat couter type to uint64_t * [dxgi] Remove support gamma-related ScaleAndOffsetSupported * [dxvk] Destroy old swap chain before creating a new one ------------------------------------------------------------------- Sun Apr 15 09:59:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180415: * [dxvk] Print memory heap size in megabytes * [dxvk] Added memory information to adapter info (#279) * [dxvk] Move render target set comparison to DxvkRenderTargets * [dxvk] Implement bindRenderTargets method ------------------------------------------------------------------- Sat Apr 14 22:40:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.42~git20180414: * [d3d11] Report TYPED_UAV only if both TBs and SIs are supported * [dxvk] Recreate swap chain on presentation failure * [tests] Add D3D11 format tests * [d3d11] Improve format support queries ------------------------------------------------------------------- Sat Apr 14 11:08:59 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180414: * [dxvk] Improved memory allocation debug output * [dxgi] Cosmetic changes * [d3d11] Improved debug output of D3D11DeviceContext methods * [dxvk] Fixed silly typo * [dxvk] Improved debug output when resource creation fails ------------------------------------------------------------------- Fri Apr 13 12:12:16 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180413: * [dxgi] DxgiVkPresenter: use Microsoft-style API * [dxgi] Use 1D texture to implement the gamma lookup table * [d3d11] Validate texture sample count * [dxvk] Enable VK_KHR_sampler_mirror_clamp_to_edge * [d3d11] Cap mip level count for textures and views ------------------------------------------------------------------- Thu Apr 12 21:39:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180412: * [d3d11] ClearUnorderedAccessViewUInt: Create temp view if necessary * [dxgi] Use GetMonitorInfoW function explicitly (#271) * [dxgi] Added static format mapping table * [dxgi] Rename and move DXGI format lookup related structures ------------------------------------------------------------------- Thu Apr 12 12:54:54 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180412: * [dxbc] Fixed incorrect result vector dimension for OpImageQuerySize * [dxgi] Re-implement gamma control functions * [dxgi] Re-enable strong reference to DxgiAdapter in DxgiOutput * Revert "[dxgi] Create persistent DxgiOutput object" * [dxgi] Remove Output reference from DxgiSwapChain * [dxgi] Remove gamma control methods from DxgiOutput * [dxgi] Replaced ugly pointer cast by more reasonable code * [d3d11] Use meta clear for ClearUnorderedAccessView* methods * [dxvk] Implement clearBufferView and clearImageView * [dxvk] Increase workgroup size for buffer clear shaders * [dxgi] Disable gamma curve in presenter * [dxbc] Remove Nvidia driver version check * [dxvk] Create compute pipelines for meta clear ops * [dxvk] Added missing shader files * [dxvk] Add separate clear shaders for array views * [dxvk] Added DxvkMetaClearObjects stub * [dxvk] Add format info flag for integer formats * [dxvk] Added meta shaders for image/buffer clear operations * [dxvk] Removed unused DxvkOptions * [dxbc] Implemented Nop instruction * [dxbc] Fix __GL_NextGenCompiler check... ------------------------------------------------------------------- Tue Apr 10 22:42:29 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180411: * [dxbc] Re-enable Nvidia workarounds if __GL_NextGenCompiler is '0' * [dxbc] Disable Nvidia-specific workarounds for 396.18 and above * [dxgi] Remove unnecessary debug output * [dxgi] Implement gamma control methods for DxgiOutput * [dxgi] Create persistent DxgiOutput object * [dxgi] Implement gamma ramp in presenter * [dxgi] Re-implement presentation shaders in GLSL * [general] Updated README * Added instructions for installing from the easy build script. (#264) ------------------------------------------------------------------- Tue Apr 10 13:06:08 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180410: * [dxvk] Optimize binding ID remapping * [spirv] Track instruction offset in instruction iterator * [dxbc] Refactored opcode controls * [dxbc] Fix sampleinfo_uint instruction * [dxvk] Removed on-disk pipeline cache * [dxbc] Add missing component count to gs_layer variable type * [d3d11] Fixed compiler errors * [dxvk] Enable sample rate shading if needed * [dxbc] Enable CapabilitySampleRateShading capability when needed * [dxvk] Add missing format info for the *_422_UNORM formats * [dxbc] Implement support for SV_PrimitiveID * [dxgi] Fixed packed 16-bit format mappings ------------------------------------------------------------------- Sat Apr 07 15:53:48 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180407: * [d3d11] Fix compilation with WINE headers (#247) * [util] Fix compilation with WINE headers (#246) * [general] Updated README * [general] Update README ------------------------------------------------------------------- Sat Apr 07 10:30:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180406: * [d3d11] Implement DXBC shader module cache ------------------------------------------------------------------- Fri Apr 06 11:13:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180406: * [general] Fix another README typo * Fix typos in README.md (#244) ------------------------------------------------------------------- Thu Apr 05 21:45:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.41~git20180405: * [dxbc] Reciprocate W component of SV_POSITION in pixel shaders ------------------------------------------------------------------- Thu Apr 05 12:40:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180404: * [dxvk] Remove support for VK_AMD_rasterization_order * [dxbc] Implemented ImmAtomicCmpExch and AtomicCmpStore ------------------------------------------------------------------- Wed Apr 04 11:39:21 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180404: * [d3d11] Fix multisample format support query for depth images ------------------------------------------------------------------- Tue Apr 03 20:26:21 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180403: * [dxgi] Fix compilation with WINE headers (#236) * [dxvk] Removed upper limit for CS chunks * [d3d11] Flush immediate context on command list execution ------------------------------------------------------------------- Tue Apr 03 15:56:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180403: * [hud] Added <unordered_map> include to satisfy some compilers * [general] Updated README * [dxvk] Added support for pipeline-related stat counters * [dxvk] Retrieve actual memory stats for the HUD * [hud] Added stat counters to the HUD * [hud] Added configurable HUD * [dxvk] Implement basic stat counters for draw calls, queue ops * [util] Implement spin lock ------------------------------------------------------------------- Tue Apr 03 09:48:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180403: * [dxvk] Reintroduce stat counters ------------------------------------------------------------------- Mon Apr 02 18:55:25 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180402: * [dxbc] Unify constants * [dxvk] Log pipeline state when pipeline compilation fails * [util] Add generic Logger::log method * [dxgi] Replace UINT_MAX with std::numeric_limits (#234) * [dxgi] Replace MSVC _countof macro with std::size (#231) * [general] Updated README * [dxbc] Serialize hull shader fork/join phase invocations * [dxgi/d3d11] Remove COM_QUERY_INTERFACE macro, reset pointers ------------------------------------------------------------------- Mon Apr 02 10:50:19 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180402: * [dxgi/d3d11] Set returned pointers to nullptr before returning * [dxbc] Implement ImmAtomic*Min/Max instructions ------------------------------------------------------------------- Sun Apr 01 10:37:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180331: * [d3d11] Force CreateRenderTargetView to return S_OK with D3D11_RESOURCE_DIMENSION_BUFFER (#230) * [general] Updated README with wine 3.5 hints * [dxbc] Respect GloballyCoherent flag for UAVs ------------------------------------------------------------------- Sat Mar 31 11:02:03 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180330: * [dxbc] Fix explicit memory barrier semantics * [dxbc] Fixed type of atomic pointers into typed UAVs ------------------------------------------------------------------- Thu Mar 29 23:20:18 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180329: * [dxvk] Remove mutex from Dxvk(Graphics|Compute)Pipeline ------------------------------------------------------------------- Thu Mar 29 14:07:44 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180329: * [dxbc] Fix ForkInstanceId type in EmitHsForkJoinPhase * [dxbc] Run HS fork/join phases in parallel * [dxvk] Move DxvkPipelineManager object to DxvkContext * [dxvk] Time pipeline creation in debug mode ------------------------------------------------------------------- Thu Mar 29 10:04:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180329: * [general] More wine test suite fixes (#220) * [d3d11] Introduce D3D11DeviceContainer * [dxgi] Renamed private DXGI interfaces * [dxgi] Move device creation to DxgiAdapter ------------------------------------------------------------------- Wed Mar 28 10:58:34 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180328: * [dxgi] Reset pointers before returning an error * [dxbc] Do not use locations >32 for tess control outputs * [d3d11] Fixed silly bug in blend state comparison * [general] Added --no-package option to package script ------------------------------------------------------------------- Tue Mar 27 11:00:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180327: * [dxgi] More argument handling improvements (#211) * [dxbc] Enable MultiViewport capability if needed * [dxbc] Implemnted SV_ViewportArrayIndex for geometry shaders * [dxvk] Do not create descriptor set layout/template if binding count is 0 ------------------------------------------------------------------- Mon Mar 26 12:54:46 UTC 2018 - pousaduarte@gmail.com - Update to version 0.40~git20180326: * [dxgi] Fix some argument checks (#205) ------------------------------------------------------------------- Sun Mar 25 12:54:57 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180325: * [d3d11] Implemented image mapping on deferred contexts * [d3d11] Get rid of redundant format query * [d3d11] Disable DO_NOT_WAIT flag by default * [d3d11] Add <unordered_map> include ------------------------------------------------------------------- Sat Mar 24 17:46:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180324: * [d3d11] Added missing files * [d3d11] Added D3D11Options ------------------------------------------------------------------- Sat Mar 24 15:57:49 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180324: * Revert "[dxbc] Do not emit per-vertex input block" * [dxbc] Add experimental support for mixed resource types * [dxgi] Enumerate scaled and centered display modes correctly ------------------------------------------------------------------- Sat Mar 24 10:37:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180324: * [dxgi] FindClosestMatchingMode: Fall back to 8-bit SRGB format * [dxbc] Implement SV_ClipDistance and SV_CullDistance * [dxbc] Do not emit per-vertex input block * [dxbc] Check if the signature is nullptr before using it * [dxbc] Count clipping and culling planes * [tests] Fix dxbc compiler test compilation issue * [dxbc] Don't use rvalue references for file streams ------------------------------------------------------------------- Fri Mar 23 11:33:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180323: * [d3d11] Reset busy flag after emitting the Flush command * [spirv] Emit image types only once * [dxvk] Use analyzer to determine UAV image type * [dxvk] Fixed command buffer synchronization * [dxbc] Add analyzer stub * [d3d11] Remove unnecessary Map() check * [dxvk] Remove DxvkFence * [dxvk] Move fence object into DxvkCommandList ------------------------------------------------------------------- Thu Mar 22 17:00:54 UTC 2018 - opensuse-packaging@opensuse.org - Update to version 0.31~git20180322: * [d3d11] Do not forward D3D11_MAP_FLAG_DO_NOT_WAIT for mapped images * [d3d11] Fix immediate context initialization * [d3d11] Fix flush condition and CS thread synchronization * [dxgi] Always use 32-bit depth buffers instead of 24-bit * [d3d11] Implement D3D11_MAP_FLAG_DO_NOT_WAIT * [dxvk] Minor ------------------------------------------------------------------- Wed Mar 21 20:23:53 UTC 2018 - opensuse-packaging@opensuse.org - Update to version 0.31~git20180321: * [dxvk] Move tess state validation to validatePipelineState * [dxvk] Check whether renderpass is null before creating pipeline * [util] Fix possible crash with null interfaces in private storage * [dxbc] Support UNorm/SNorm typed resources * [d3d11] Fix CheckFeatureSupport return value ------------------------------------------------------------------- Wed Mar 21 12:37:50 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180321: * [d3d11] Implement support for D3D11_FEATURE_FORMAT_SUPPORT2 * [d3d11] Lift shaderStorageImageReadWithoutFormat requirement * [dxbc] Lift ShaderStorageImageReadWithoutFormat requirement * [dxbc] Set image format for UAVs when atomic operations are used * [d3d11] Implement remaining D3D11.1 feature queries * [dxvk] Increase UAV slot count to 64 for the graphics pipeline * [d3d11] Fixed constant buffer binding update * Shader cache (#188) * [d3d11] Expose implemented Feature Level 11.1 features * [dxvk] Remove old debug code * [dxvk] Respect bufferImageGranularity for non-linear images ------------------------------------------------------------------- Tue Mar 20 14:34:59 UTC 2018 - opensuse-packaging@opensuse.org - Update to version 0.31~git20180319: * [d3d11] Export support for driver command lists * [d3d11] Remove obsolete acquire/release pair ------------------------------------------------------------------- Mon Mar 19 15:10:36 UTC 2018 - opensuse-packaging@opensuse.org - Update to version 0.31~git20180319: * [dxvk] Use multiple free lists for physical buffer slices * [d3d11] Remove warnings from CopySubresourceRegion1 / UpdateSubresource1 ------------------------------------------------------------------- Mon Mar 19 11:46:54 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180319: * [build] Add header required for std::find_if() * [d3d11] Implemented buffer mapping on deferred contexts * [dxvk] Implement thread-safe buffer renaming * [d3d11] Expose Feature Level 11_1 if explicitly requested * [d3d11] Refactored D3D11SamplerState creation * [d3d11] Refactored D3D11DepthStencilState creation * [d3d11] Implemented D3D11BlendState1 * [d3d11] Implemented ID3D11RasterizerState1 stub * [d3d11] Return error if an application creates an RTV for a buffer ------------------------------------------------------------------- Sun Mar 18 20:28:12 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180318: * [dxgi] Fix back buffer destruction ------------------------------------------------------------------- Sun Mar 18 16:20:50 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180318: * [d3d11] Fix sampler state refcount issue * [d3d11] Remove inconsistent uses of "this" * [d3d11] Implement GetConstantBuffers1 methods * [d3d11] Implement SetConstantBuffers1 methods * [d3d11] Add constant buffer offsets and counts to context state * [d3d11] Enable direct image mapping by default * [dxvk] Enable the use of VK_KHR_descriptor_update_template * [dxvk] Added Vulkan function pointers for VK_KHR_descriptor_update_template ------------------------------------------------------------------- Sat Mar 17 20:51:01 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180317: * [d3d11] Re-define D3D11_FEATURE_DATA_ARCHITECTURE_INFO * [d3d11] stub implementation of ID3D11Device1 (#175) * [d3d11] stub implementation of ID3DDeviceContext1 (#174) * [dxvk] Reimplemented clearRenderTarget ------------------------------------------------------------------- Sat Mar 17 13:37:51 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180317: * [d3d11] Move OMSetRenderTargets optimization to D3D11ImmediateContext * [d3d11] Moved GetViewFromDesc and NormalizeDesc out of D3D11Devuce * [d3d11] Enable IDXGIDevice2 interface query * [dxgi] Support more formats in the presenter * [dxgi] added stub implementation of IDXGIDevice2 (#172) * [general] Updated README * Move Custom PCI ID to DXGI * [dxbc] fix MSVC 64-bit build ------------------------------------------------------------------- Fri Mar 16 12:27:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180316: * [dxvk] Implement proper compute pipeline lookup * [dxvk] Fixed depth image layout regression * [d3d11] Allow 2D array view creation for 3D textures ------------------------------------------------------------------- Thu Mar 15 15:39:50 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180314: * Some changes to the packaging script (#162) ------------------------------------------------------------------- Wed Mar 14 18:42:08 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180314: * [d3d11] Always use VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT * [d3d11] Re-implement direct image mapping (disabled by default) * [d3d11] Check if a textue can be created before making the attempt * [d3d11] Create mapped image buffer only when needed * [d3d11] Refactored Map/Unmap methods * [d3d11] Refactoring texture classes: Move static methods into D3D11CommonTexture * [d3d11] Refactoring texture classes: Remove D3D11TextureInfo * [d3d11] Refactoring texture classes: Introduce D3D11CommonTexture ------------------------------------------------------------------- Tue Mar 13 19:08:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180313: * Revert "[d3d11] Re-enable image mapping" * [spirv] Removed SPIR-V Tools headers * [spirv] Remove SPIR-V tools integration * [dxvk] Remove RenderDoc workaround * [d3d11] Use only one mip level for multisampled textures * [d3d11] Flush CS chunks when executing/finalizing command lists * [dxgi] fix DxgiOutput::FindClosestMatchingMode() implementation (#157) * [d3d11] D3D11Device::QueryInterface() suppress warning for d56e2a4c-5127-8437-658a-98c5bb789498 ------------------------------------------------------------------- Mon Mar 12 13:43:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180312: * [dxvk] Use dummy viewport if requested viewport size is 0 * [d3d11] Do not enable D3D11_BIND_UNORDERED_ACCESS for back buffers * [d3d11] Re-enable image mapping * [dxbc] Implemented samplepos instruction * [dxgi,d3d11] log unknown interfaces GUID (#154) ------------------------------------------------------------------- Mon Mar 12 10:38:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180312: * [dxgi] implement DxgiOutput::FindClosestMatchingMode() (#153) * [d3d11] add check for pResource against nullptr in D3D11ImmediateContext::Map() * [dxvk] Flush initialization context unconditionally ------------------------------------------------------------------- Sun Mar 11 18:15:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180311: * [d3d11] Disabled image mapping ------------------------------------------------------------------- Sun Mar 11 13:56:07 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180311: * [d3d11] Fix image tiling * [d3d11] Allocate host-readable images on host-visible memory ------------------------------------------------------------------- Sat Mar 10 19:21:43 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180310: * [dxvk] Add memory flag query to DxvkImage * [dxvk] Removed stat counters * Update README.md * Add Custom PCI Vendor and Device ID Support (#137) * [dxbc] implemented retc instructions (#140) * [dxbc] Implemented DclHsMaxTessFactor * [d3d11] Fix minor code inconsistencies * [d3d11] Reimplemented ClearState * [d3d11] Fix RestoreUnorderedAccessViews for pixel shaders * [d3d11] Minor fixes * [d3d11] RestoreState: Restore DS/OM/RS state objects * [d3d11] RestoreState: Restore IA state * [d3d11] RestoreState: Restore viewport state * [d3d11] RestoreState: Restore shader resource bindings * [dxvk/d3d11] Refactored resource binding * [d3d11] RestoreState: Restore vertex and index buffer bindings * [d3d11] RestoreState: Restore framebuffer and shader bindings * [dxbc] Fixed TGSM size with dcl_tgsm_raw * [d3d11] Fix texture cube array view normalization * [d3d11] Implemented OMGetRenderTargetsAndUnorderedAccessViews and predication stub * [d3d11] Fix potentially invalid value for anisotropic filtering ------------------------------------------------------------------- Fri Mar 09 14:08:47 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180309: * [dxvk] Tweaked command stream chunk sizes and submission * [dxvk] Reduced overhead of depth image descriptor layout check ------------------------------------------------------------------- Thu Mar 08 18:29:35 UTC 2018 - pousaduarte@gmail.com - Update to version 0.31~git20180308: * [general] Added release packer script * [dxgi] Fixed R10G10B10A2 format mapping * [dxbc] Use signed int for component index in OpImageGather * [d3d11] Implemented ClearUnorderedAccessViewUint for raw and structured buffers * [d3d11] Partially implement SOSetTargets/SOGetTargets * [dxvk] Recreate buffer views if necessary * [dxvk] Implemented physical buffer view * [d3d11] Fixed potential sync issue in Map() * [dxbc] Use correct arrays for vicp/vocp in hull shaders * [dxvk] Add adapter logging * [dxbc] Fix hull shader barrier issue ------------------------------------------------------------------- Tue Mar 06 18:53:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180306: * [dxbc] Implemented vicp for hull shaders ------------------------------------------------------------------- Tue Mar 06 17:52:36 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180306: * Add support for MSVC, attempt 3 (#130) * [dxbc] Implemented workaround for hull shader output synchronization * [d3d11] Enabled tessellation shaders * [dxbc] Implemented domain shader input variables * [dxbc] Implemented hull shader passthrough ------------------------------------------------------------------- Tue Mar 06 14:44:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180306: * [dxbc] Reworked Hull Shader phase invocations * [dxbc] Implemented Hull Shader output setup * [dxbc] Implemented Hull Shader output variables * [d3d11] Re-implement check for mapping device-local images * [dxbc] Added support for the control point phase in Hull Shaders * [dxbc] Formatting fixes + Hull shader barriers ------------------------------------------------------------------- Mon Mar 05 15:53:50 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180305: * [dxbc] Fixed tessellation factor enums * Revert "Add MSVC support (#123)" * Add MSVC support (#123) * [dxbc] Added tess level interface variables * [tests] Simplified dxbc disasm test * [general] Updated README on wine 3.3 * [d3d11] Treat D3D11SamplerState as state object * [d3d11] Fixed CheckMultisampleQualityLevels return values * [d3d11] add stub for ID3DUserDefinedAnnotation (#122) * [d3d11] Fixed potential crashes in InitImage/InitBuffer ------------------------------------------------------------------- Sun Mar 04 10:08:07 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180303: * [dxvk] Fixed D3D11CreateDeviceAndSwapChain bug ------------------------------------------------------------------- Sat Mar 03 21:38:24 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180303: * [d3d11] Fixed FinishCommandList * [d3d11] Move framebuffer creation out of OMSetRenderTargets * [d3d11] Implemented FinishCommandList/ExecuteCommandList * [dxgi] implement CreateDXGIFactory2 (#120) ------------------------------------------------------------------- Sat Mar 03 12:17:28 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180302: * [dxvk] Fix typo * [dxvk] Fix Nvidia driver version number ------------------------------------------------------------------- Fri Mar 02 13:39:09 UTC 2018 - pousaduarte@gmail.com - Update to version 0.30~git20180302: * [dxvk] Do not enable HUD if DXVK_HUD is 0 * Debug logging for compute shaders (#115) * [dxvk] Use linked list for CS chunks ------------------------------------------------------------------- Thu Mar 01 13:44:07 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180301: * [dxbc] Implemented more tessellation-related declarations * [dxbc] Implemented Hull Shader control point count declarations ------------------------------------------------------------------- Thu Mar 01 11:13:15 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180301: * [dxbc] Implemented Hull Shader fork/join phase invocations * [dxgi] Added support for 422 formats * [dxbc] Implemented new workaround for depth-compare ops on Nvidia * [dxbc] Implemented Hull shader function declarations * [dxvk] Replaced exception by error message * [dxvk] Fixed potential memory allocation issue * [d3d11] Implemented CSGetUnorderedAccessViews * [dxbc] Implemnted some HS/DS stubs ------------------------------------------------------------------- Wed Feb 28 14:01:20 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180228: * [dxvk] Implemented new workaround for query-related lockups * [dxbc] Do not emit depth image types for integer images * [dxbc] Remove packDrefValueIntoCoordinates hack * [dxbc] Use signed integers for bit insert/extract ops * [dxvk] Added workaround for RADV query problem ------------------------------------------------------------------- Tue Feb 27 12:51:39 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180227: * [dxvk] Fall back to host memory if no device memory is available * [dxvk] Mark events and queries as available by default * [d3d11] Add exception handling to CreateTexture* methods ------------------------------------------------------------------- Mon Feb 26 17:52:57 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180226: * [d3d11] Return fake tessellation shader obejects to the application * [d3d11] Fix Create*Shader return values * [d3d11] Fix format for 1D RTVs and DSVs * [dxbc] Implement EvalAttribute* instructions ------------------------------------------------------------------- Mon Feb 26 14:34:18 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180226: * [d3d11] Implemented 1D render target and depth-stencil views * Revert "[d3d11] Remvoed query support" * Revert "[d3d11] Fixed fake event query" * [dxbc] Properly implement Input/Output coverage masks ------------------------------------------------------------------- Mon Feb 26 11:00:49 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180224: * [util] fix GUID printing * [dxgi] add support for B4G4R4A4 color format ------------------------------------------------------------------- Sun Feb 25 15:46:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180225: * [dxvk] Fixed potential null pointer access when creating descriptor set * [dxvk] Fixed 32-bit compilation issue, derp ------------------------------------------------------------------- Sat Feb 24 23:15:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180224: * [dxvk] Implement proper graphics and compute state validation * [d3d11] Return early for clear operations on NULL views * Throw error if requested layer is not installed (#100) ------------------------------------------------------------------- Fri Feb 23 22:05:48 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180223: * [d3d11] Fixed CopySubresourceRegion for partial buffer updates * [d3d11] Fixed fake event query * [d3d11] Remvoed query support * [dxvk] Validate tessellation state for graphics pipeline ------------------------------------------------------------------- Thu Feb 22 20:46:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180222: * [d3d11] Allow UAVs to be created for the swap image * [d3d11] Do not create views if the resource bind flags are invalid ------------------------------------------------------------------- Thu Feb 22 18:16:52 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180222: * [spirv] Added experimental spirv-tools integration * [general] wine-staging -> wine-vulkan ------------------------------------------------------------------- Wed Feb 21 21:38:28 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180221: * [dxbc] Implement AtomicIMin/Max instructions * [dxvk] Implemented typeless resolve * [dxvk] Change resolveImage interface to accept an explicit format ------------------------------------------------------------------- Tue Feb 20 12:22:13 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180220: * [dxvk] Support depth-to-color image copies and vice versa * [d3d11] Added test case for occlusion queries and small improvements * [d3d11] Fixed crash with timestamp disjoint queries * [d3d11] Remove leftover log message * [dxvk] Implement backend part for event queries * [d3d11] Wired up D3D11Query to backend ------------------------------------------------------------------- Sun Feb 18 23:14:21 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180218: * [dxgi] Add stub implementation of DXGI_PRESENT_TEST * [dxvk] Added query tracker ------------------------------------------------------------------- Sun Feb 18 16:47:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180218: * [dxvk] Implemented query allocation * [dxvk] Relax feature requirements, minor fixes * [dxbc] Use correct image query instructions for UAVs ------------------------------------------------------------------- Fri Feb 16 13:42:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180216: * [dxvk] Only emit depth image types for 2D and Cube images * [dxbc] Added support for SV_RenderTargetID in pixel shaders * [dxvk] Add DxvkEvent class * [dxvk] Make query pools more usable as query allocators * [dxbc] Implemented BfRev instruction * [dxvk] Introduced DxvkComputePipelineStateInfo ------------------------------------------------------------------- Wed Feb 14 16:22:11 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180214: * [dxvk] Do not commit compute barriers for unbound resources * [dxgi] Use recursive locking and report fullscreen state changes early * [d3d11] Fix unhandled exception * [d3d11] Added experimental support for RTVs into 3D images * [dxvk] More query stuff * [d3d11] Implemented SRV and RTV normalization ------------------------------------------------------------------- Tue Feb 13 13:17:45 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180213: * [dxvk] Implemented more query and query pool methods ------------------------------------------------------------------- Mon Feb 12 21:38:23 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180212: * [dxvk] Implemented virtual query class and query pool stub * Improve documentation for building on Debian (#66) * Setup script: improvements to error handling (#65) * [dxvk] Added Query stub ------------------------------------------------------------------- Sat Feb 10 16:17:41 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180208: * Fixes for the setup script (#63) * [hud] Use buffer invalidation instead of synchronization * [dxbc] Added support for oDepthGe/oDepthLe * [dxbc] Added support for early fragment tests * [dxbc] Silence DclIndexRange warnings * [d3d11] Enable sampleRateShading feature ------------------------------------------------------------------- Wed Feb 07 18:26:07 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180207: * [dxvk] Improve internal framebuffer APIs * [dxvk] Improve debuggability of shader compiler issues * [dxvk] Fixed MSAA issue in render pass info * [d3d11] Fix optional write issue in GetData() ------------------------------------------------------------------- Tue Feb 06 17:14:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180206: * Setup script: added an option to check status (#59) * [d3d11] Add support for DSV read-only flags * [general] Updated README ------------------------------------------------------------------- Mon Feb 05 22:23:52 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180205: * [dxvk] Separated resource view classes * [dxvk] Add index buffer and vertex buffer usage flags to dummy buffer * [dxvk] Add hack to allow RenderDoc to function on AMD GPUs ------------------------------------------------------------------- Mon Feb 05 11:30:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180205: * [d3d11] dlls_setup.sh -> setup_dxvk.sh * [general] Remove _vk prefix from DLL names * wine install script to support overrides only. (#57) * [dxvk] Unbind incompatible resources * [dxvk] Reduced resource binding overhead a bit * [d3d11] Implemented ClearUnorderedAccessViewUint for images * [dxbc] Implemented Geometry SV RenderTargetId * [dxbc] Fixed output value store for geometry shaders * [dxbc] Implemented stream instructions for single-stream GS * [dxbc] Implemented Lod instruction * [dxbc] Implemented SampleInfo instruction * [dxbc] Fixed image size query for multisampled images * [dxbc] Implemented GatherPo and GatherPoC instructions * [dxbc] Implement CountBits/FirstBit instructions ------------------------------------------------------------------- Sat Feb 03 21:23:55 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180203: * [d3d11] Implemented CopySubresourceRegion for buffers * [dxbc] Remove push constant block for now ------------------------------------------------------------------- Fri Feb 02 21:40:04 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180202: * [dxbc] Do not emit depth type for non-sampled resources ------------------------------------------------------------------- Thu Feb 01 22:36:27 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180201: * [dxvk] Initial work on instance data fetch rates * [dxbc] Added push constant definition block ------------------------------------------------------------------- Thu Feb 01 13:43:23 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180201: * [dxvk] Set dummy vertex buffer size to the maximum binding stride * [dxvk] Initialize dummy resources to zero * [dxvk] Bind dummy resource for unbound vertex and index buffers * [d3d11] mock D3D11_QUERY_EVENT ------------------------------------------------------------------- Wed Jan 31 17:42:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180131: * [d3d11] Added missing CS thread sync for non-discard Map() * [dxbc] Remove duplicate image type declaration ------------------------------------------------------------------- Wed Jan 31 12:22:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180131: * [d3d11] Include <algorithm> ------------------------------------------------------------------- Wed Jan 31 00:41:44 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180131: * [dxvk] Use logger instead of exception when compiling pipelines ------------------------------------------------------------------- Tue Jan 30 17:42:38 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180130: * [dxvk] Fixed incorrect barriers for depth-stencil images ------------------------------------------------------------------- Tue Jan 30 11:27:15 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180130: * [d3d119 Implemented DXVK_FEATURE_LEVEL to restrict D3D feature levels * [dxgi] Use VK_PRESENT_MODE_FIFO instead of MAILBOX * [dxgi] Remove SyncInterval implementation ------------------------------------------------------------------- Tue Jan 30 01:54:02 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180130: * [d3d11] Get rid of duplicate code in ResolveSubresource * [d3d11] Handle non-multisampled source images in ResolveSubresource * [dxvk] Create dummy sampler * [dxvk] Emit dynamic state after binding a graphics pipeline ------------------------------------------------------------------- Mon Jan 29 16:42:10 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180129: * [d3d11] Fixed query-related logging * [general] Minor COM pointer improvements * [dxbc] Added Hull/Domain shader specific structures * Add an option to set up dxvk through overrides (#40) * [d3d11] Implemented CreateHullShader and CreateDomainShader ------------------------------------------------------------------- Mon Jan 29 11:34:42 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180129: * [dxvk] Fixed incorrect buffer create info * [d3d11] Added support for tessellation patch primitives * [dxbc] Implemented OutputCoverageMask * [dxbc] Declare SV variables on first use ------------------------------------------------------------------- Mon Jan 29 00:48:51 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180129: * [d3d11] Silence unnecessary SOSetTargets errors * [dxvk] Refactored physical buffer * [dxvk] Minor CS improvement * [d3d11] Remove default sampler * [d3d11] Fixed incorrect aspect mask for depth-stencil clear ops * [general] Make use of C++ zero initialization * [d3d11] Implmented ResolveSubresource for typed resources * [dxgi] Added typeless format flag * [dxbc] Added support for SV_SampleIndex ------------------------------------------------------------------- Sun Jan 28 12:17:20 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180128: * [d3d11] Implemented normalization for UAV descriptions * [d3d11] Implemented GetUnorderedAccessViewDescFromResource * [dxbc] Remove obsolete error message when resinfo is used with UAVs ------------------------------------------------------------------- Sat Jan 27 19:50:56 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180127: * [dxbc] Removed branches around texture sample/gather ops * [dxvk] Added dummy resources for descriptors * [dxvk] Fixed incorrect framebuffer attachment formats ------------------------------------------------------------------- Fri Jan 26 18:25:59 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180126: * fixed dlls_dir variable in the setup script ------------------------------------------------------------------- Fri Jan 26 00:05:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180125: * [dxvk] Do not dispatch compute shaders if no pipeline is bound ------------------------------------------------------------------- Thu Jan 25 01:16:38 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180124: * [dxvk] Fixed reported size of staging buffers ------------------------------------------------------------------- Wed Jan 24 12:18:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180123: * [d3d11] Implemented IAGetIndexBuffer an IAGetVertexBuffers * [d3d11] Fixed depth-stencil clear outside renderpasses * [dxvk] Fixed potentially problematic image barriers * [dxvk] DxvkBindingLayout -> DxvkPipelineLayout ------------------------------------------------------------------- Tue Jan 23 16:49:38 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180123: * [d3d11] Sub-allocate from larger update buffers for UpdateSubresources * Revert "[dxvk] Use VK_IMAGE_LAYOUT_GENERAL for all render targets" ------------------------------------------------------------------- Tue Jan 23 12:47:22 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180123: * Improvements for log files (#22) * [dxvk] Use VK_IMAGE_LAYOUT_GENERAL for all render targets * [d3d11] Use Map() for host-visible buffers in UpdateSubresource * [d3d11] Implemented CS chunk submission for deferred contexts ------------------------------------------------------------------- Tue Jan 23 11:32:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180123: * [d3d11] Added stubs for deferred contexts and command lists * [d3d11] mock D3D11_QUERY_TIMESTAMP * [dxvk] Removed explicit image barriers for render passes * Updated issue template ------------------------------------------------------------------- Mon Jan 22 00:31:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180122: * [hud] Changed vertex buffer format ------------------------------------------------------------------- Sun Jan 21 18:41:33 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180121: * [d3d11] Synchronize with CS thread before present * [general] Updated README * Create issue_template.md * [dxvk] Recycle CS chunks * Revert "[d3d11] Temporary fix for Presenter <-> CS thread sync issue" * [d3d11] Temporary fix for Presenter <-> CS thread sync issue * [d3d11] Fixed flush order * [d3d11] Fixed image copy operation * [dxvk] Limit size of the CS command queue * [dxvk] Fixed incorrect image packing behaviour * [d3d11] Enabled command stream thread * [d3d11] Record commands into a CS chunk * [d3d11] Use EmitCs for buffer mapping * [d3d11] Use EmitCs for resource updates * [dxvk] Added convenience functions to work with compressed image sizes * [d3d11] Use EmitCs for some Copy/Clear operations * [d3d11] Use EmitCs for state object updates * [d3d11] Use EmitCs for shader and resource binding methods * [d3d11] Use EmitCs for Input Assembly methods * [d3d11] Use EmitCs for draw and dispatch calls * [d3d11] Use EmitCs for general setup and synchronization methods * [dxvk] Refactored blend constants * [d3d11] Add EmitCs method to D3D11DeviceContext * [dxvk] Remove command dispatch methods from CS thread ------------------------------------------------------------------- Sun Jan 21 11:46:32 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180121: * [general] Rename libraries * Added script to setup dlls in wine (#19) * [dxvk] fix missing renderPassEnd calls * Check if shader in READ_PATH exists before using it ------------------------------------------------------------------- Sat Jan 20 15:48:49 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180120: * [d3d11] Added new D3D11ImmediateContext class ------------------------------------------------------------------- Sat Jan 20 12:01:30 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180120: * [dxbc] Implemented SampleB instruction * [d3d11] Implemented mipmap generation ------------------------------------------------------------------- Fri Jan 19 20:27:28 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180119: * [d3d11] Fixed initialization of compressed images * [d3d11] Implemented image mapping for reads * [general] Updated README ------------------------------------------------------------------- Fri Jan 19 12:08:06 UTC 2018 - pousaduarte@gmail.com - Update to version 0.21~git20180119: * [general] Mention binary releases in README * [dxbc] Do not set ImageOperandsLodMask for multisample loads * [dxvk] Use strict rasterization order when depth test is disabled * [dxvk] To not attempt to clear compressed image * [d3d11] Downgraded input layout message to debug * [dxvk] Optimized buffer renaming * Fix build on gcc6 * [dxvk] Fixed offset in buffer to image copy * [dxvk] Fixed DxvkPhysicalBufferSlice initialization * [dxvk] Cleaned up DxvkBufferSlice and added documentation * [d3d11] Use DxvkPhysicalBufferSlice for resource copies and buffer views * [dxvk] Use DxvkPhysicalBufferSlice for indirect draws and buffer binding * [dxvk] Use DxvkPhysicalBufferSlice for buffer memory barriers * [dxvk] Added DxvkPhysicalBuffer to back virtual buffers ------------------------------------------------------------------- Thu Jan 18 11:40:37 UTC 2018 - pousaduarte@gmail.com - Update to version 0.20~git20180118: * [d3d11] Map default constant buffers to host memory ------------------------------------------------------------------- Thu Jan 18 10:11:14 UTC 2018 - pousaduarte@gmail.com - Update to version 0.20~git20180118: * [dxvk] End render pass before a staged image upload * [d3d11] Enable dual-source blending feature * [d3d11] Updated D3D11CreateDevice * [d3d11] Removed some uninteresting log messages ------------------------------------------------------------------- Wed Jan 17 23:02:36 UTC 2018 - pousaduarte@gmail.com - Update to version 0.20~git20180117: * [dxbc] Implemented swapc * [general] Added release build instructions to readme * [d3d11] Enable depth clamp * [d3d11] Implemented normalization for shader resource view parameters ------------------------------------------------------------------- Wed Jan 17 11:44:39 UTC 2018 - pousaduarte@gmail.com - Update to version 0.20~git20180117: * [dxbc] Fixed shift operations * [dxgi] Removed leftover debug message * [dxbc] Implemented gather instructions and pixel shader SVs * [dxgi] Fixed DXGI_FORMAT_A8_UNORM component mapping * [dxbc] Implemented ld2dms * [d3d11] Reduced log spamming, improved parameter naming consistency * [d3d11] copy all layers and mipmaps in CopyResource * [d3d11] support textures in CopyResource * [d3d11] move supported query check to d3d11_query * [d3d11] don't fail when creating unsupported queries ------------------------------------------------------------------- Tue Jan 16 15:57:08 UTC 2018 - pousaduarte@gmail.com - Update to version 0.20~git20180116: * [dxvk] Make use of VK_AMD_rasterization_order * [dxvk] Added app and device specific options * [dxvk] Refactored device extension handling * [util] Fixed message logging to file * [util] Added getExeName() function * [d3d11] Using proper layout for depth textures read by shaders * [util] Fixed compiler issue with older GCC versions * [dxvk] Increased queued command submission limit * [dxvk] Limit vkCmdUpdateBuffer size to 4kB * [d3d11] Flush resource init commands
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor