Commit Graph

4270 Commits

Author SHA1 Message Date
Mike Lothian de0f81fcdc [spirv] Add utility include
This fixes a compile issue with GCC 12.1

FAILED: src/spirv/libspirv.a.p/spirv_compression.cpp.obj
i686-w64-mingw32-g++ -Isrc/spirv/libspirv.a.p -Isrc/spirv -I../dxvk-9999/src/spirv -I../dxvk-9999/include -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -O0 -DNOMINMAX -D_WIN32_WINNT=0xa00 -msse -msse2 -msse3 -mfpmath=sse -Wimplicit-fallthrough -O3 -march=native -pipe -flto=16 -mno-avx -MD -MQ src/spirv/libspirv.a.p/spirv_compression.cpp.obj -MF src/spirv/libspirv.a.p/spirv_compression.cpp.obj.d -o src/spirv/libspirv.a.p/spirv_compression.cpp.obj -c ../dxvk-9999/src/spirv/spirv_compression.cpp
In file included from ../dxvk-9999/src/spirv/../util/util_flags.h:5,
                 from ../dxvk-9999/src/spirv/spirv_include.h:7,
                 from ../dxvk-9999/src/spirv/spirv_instruction.h:6,
                 from ../dxvk-9999/src/spirv/spirv_code_buffer.h:8,
                 from ../dxvk-9999/src/spirv/spirv_compression.h:5,
                 from ../dxvk-9999/src/spirv/spirv_compression.cpp:1:
../dxvk-9999/src/spirv/../util/util_bit.h:300:33: warning: ‘template<class _Category, class _Tp, class _Distance, class _Pointer, class _Reference> struct std::iterator’ is deprecated [-Wdeprecated-declarations]
  300 |     class iterator: public std::iterator<std::input_iterator_tag,
      |                                 ^~~~~~~~
In file included from /usr/lib/gcc/i686-w64-mingw32/12.1.0/include/g++-v12/bits/stl_algobase.h:65,
                 from /usr/lib/gcc/i686-w64-mingw32/12.1.0/include/g++-v12/vector:60,
                 from ../dxvk-9999/src/spirv/spirv_compression.h:3:
/usr/lib/gcc/i686-w64-mingw32/12.1.0/include/g++-v12/bits/stl_iterator_base_types.h:127:34: note: declared here
  127 |     struct _GLIBCXX17_DEPRECATED iterator
      |                                  ^~~~~~~~
../dxvk-9999/src/spirv/spirv_code_buffer.h: In member function ‘size_t dxvk::SpirvCodeBuffer::endInsertion()’:
../dxvk-9999/src/spirv/spirv_code_buffer.h:214:19: error: ‘exchange’ is not a member of ‘std’
  214 |       return std::exchange(m_ptr, m_code.size());
      |                   ^~~~~~~~

Signed-off-by: Mike Lothian <mike@fireburn.co.uk>
2022-06-02 15:10:53 +02:00
Philip Rebohle 5d0273f520
[dxvk] Remove interpolation decorations for replaced shader inputs 2022-06-01 14:11:09 +02:00
Philip Rebohle 6d3ba1b7d7
[dxvk] Perform validation on render pass formats read from state cache 2022-06-01 14:11:09 +02:00
Philip Rebohle 80e125a130
[dxvk] Perform more extensive validation on pipeline state vectors 2022-06-01 14:11:06 +02:00
Blisto91 4ff7687dea [util] Force SM1 for the Halo CE SPV3 launcher 2022-05-31 15:45:23 +02:00
Robin Kertels 7bcf3e1062
[util] Force SM1 for the Warhammer ROR Launcher (#2579)
Co-authored-by: Philip Rebohle <25567304+doitsujin@users.noreply.github.com>
2022-05-31 15:19:30 +02:00
Winter Snowfall 8c96830752
Add d3d9.deferSurfaceCreation workaround for Scrapland (Remastered) (#2574) 2022-05-31 15:17:31 +02:00
noneistaken 93eb86aa3e Blend HUD text shadow and center correctly
This fixes incorrect blending between HUD text, which would cause a narrow transparent gap between the text center and border/shadow that is visible at large text sizes.
2022-05-30 18:23:19 +02:00
Masanori Kakura 0678d80e89 [meta] Update Meson requirement (>=0.49) in README 2022-05-25 18:44:49 +02:00
Zhiyi Zhang 8147844aef [dxgi] Return DXGI_ERROR_INVALID_CALL for invalid IDXGIAdapter3::RegisterVideoMemoryBudgetChangeNotificationEvent() parameters
According to wine tests 14237e321b

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-05-25 18:44:20 +02:00
WinterSnowfall 51e56c0420 [util] Enforce a maxAvailableMemory limit for Majesty 2 2022-05-23 07:54:37 +00:00
Paul Gofman cc11bb8240 [d3d9] Don't adjust window position and size in windowed mode. 2022-05-23 07:53:13 +00:00
Paul Gofman cde0fbe7b0 [util] Enable d3d9.deferSurfaceCreation for Small Radios Big Televisions 2022-05-19 02:51:41 +00:00
Joshua Ashton 5b7406fed5 [d3d9] Fix crash when using StretchRect with NULL rts 2022-05-10 02:02:35 +01:00
pchome 15fa310bb4 [build] Bump required meson version to >=0.49 2022-05-01 18:37:39 +02:00
Philip Rebohle 6ddd0cfe0a
[d3d11] Do not add UINT formats to all UAV format lists
Analogous to vkd3d-proton changes. Allows drivers to use compression more
frequently.
2022-04-25 17:37:10 +02:00
Philip Rebohle a85f7c48a5
[d3d11] Make ClearUnorderedAccessViewUINT fallback more generic 2022-04-25 17:34:45 +02:00
Philip Rebohle 304d0549d5
[dxbc] Implement range check for private array reads
We already do this for stores.
2022-04-21 18:06:41 +02:00
Robin Kertels 3004026db8 [d3d9] Only bind RT if we actually write to it
The alternative render path for shadow maps in Dead Space relies on this.
2022-04-20 00:58:17 +01:00
Robin Kertels bdafa16e39 [d3d9] Only bind depth buffer if the depth or stencil test is enabled 2022-04-20 00:58:17 +01:00
Joshua Ashton d6cbd99141 [util] Add missing include to thread.h 2022-04-19 18:14:58 +01:00
Joshua Ashton 08e2ec6c98 [util] Implement env helpers on non-Windows platforms 2022-04-19 17:08:17 +01:00
Joshua Ashton 147f3738f9 [d3d9] Use strlcpy helper 2022-04-19 17:08:17 +01:00
Joshua Ashton dc6b7fa4a7 [util] Add strlcpy helper
strncpy is not safe.
2022-04-19 17:08:17 +01:00
Joshua Ashton 9ee0f51870 [util] Implement thread helpers on non-Windows platforms 2022-04-19 17:08:06 +01:00
Robin Kertels 9302d33ac7 [d3d9+util] Enable invariant position by default 2022-04-18 12:40:46 +01:00
Philip Rebohle 35e8f4676b [dxvk] Remove old shader creation code 2022-04-18 13:20:16 +02:00
Philip Rebohle a731f5daae [d3d11] Use new DxvkShader constructor for video shaders 2022-04-18 13:20:16 +02:00
Philip Rebohle 69817a84dc [d3d11] Use new DxvkShaderCreateInfo struct to retrieve shader info 2022-04-18 13:20:16 +02:00
Philip Rebohle 427f51eda7 [d3d9] Use new DxvkShader constructor for format conversion 2022-04-18 13:20:16 +02:00
Philip Rebohle 98ec79f6fa [d3d9] Use new DxvkShader constructor for SWVP emulation 2022-04-18 13:20:16 +02:00
Philip Rebohle ab95b61e44 [d3d9] Use new DxvkShader constructor for fixed-function shaders 2022-04-18 13:20:16 +02:00
Philip Rebohle 10bab0c182 [dxso] Use new DxvkShader constructor 2022-04-18 13:20:16 +02:00
Philip Rebohle 8993560cde [dxbc] Use new DxvkShader constructor 2022-04-18 13:20:16 +02:00
Philip Rebohle 81d88a484d [dxvk] Use new DxvkShader constructor for HUD shaders 2022-04-18 13:20:16 +02:00
Philip Rebohle 62e706a6bb [dxvk] Use new DxvkShader constructor for swap chain shaders 2022-04-18 13:20:16 +02:00
Philip Rebohle d0b52f3ac5 [dxvk] Use new DxvkShaderCreateInfo struct to retrieve shader info 2022-04-18 13:20:16 +02:00
Philip Rebohle b0db58f098 [dxvk] Introduce new way to create DxvkShader objects 2022-04-18 13:20:16 +02:00
Philip Rebohle 736f743ae4
[spirv] Implement faster in-memory compression for shaders
Seems to be anything up to 3x as fast to decode than the previous code,
with the compression ratio being slightly worse. Encoding seems faster
as well.
2022-04-11 02:55:12 +02:00
Blisto91 727ba89670 [util] remove allowLockFlagReadonly from conf 2022-04-09 19:44:50 +02:00
Blisto91 2e68b33abd [util] correct enableDebugUtils conf to default False 2022-04-09 19:44:50 +02:00
Blisto91 3672375bc1 [util] Use cached constant buffers for Armored Warfare 2022-04-09 15:19:49 +02:00
Robin Kertels 42c66c410e [d3d9] Calculate slice alignment when uploading straight from the mapping buffer 2022-04-06 18:52:58 +00:00
Paul Gofman 957a305ca8 [d3d9] Ignore multiple app activation window messages. 2022-04-06 18:51:50 +00:00
Paul Gofman b0ed9e30ce [d3d9] Filter window messages when processing WM_ACTIVATEAPP. 2022-04-06 18:51:50 +00:00
Robin Kertels ce87bec412 [util] Force sampler type spec const for Star Wars TFU2
The game tries to binda  2D texture to a slot that is declared
as a 3D texture in the shader. This causes one particle effect
to be completely black because DXVK does not bind the texture
2022-04-05 22:37:04 +00:00
Philip Rebohle 95a3413949
[util] Fix typo in app profiles
Accidentally broke everything.
2022-03-31 18:01:52 +02:00
Philip Rebohle e07157fe72
[d3d11] Only apply anisotropy override to linear samplers
Mirrors D3D9, more or less.
2022-03-30 14:37:33 +02:00
Philip Rebohle e7e7fa231c
[dxvk] GPU query reset path
Require VK_EXT_host_query_reset instead. This fallback path is
untested nowadays and too slow to be useful.
2022-03-30 13:32:18 +02:00
Robin Kertels 6a80b51dc3 [meta] Move apitrace guide over to dxvk repo 2022-03-29 21:33:08 +00:00