Commit graph

2533 commits

Author SHA1 Message Date
Jordan Woyak
33a7283d3b VideoBackends/Metal: Fix anisotropic filtering handling. 2025-04-01 15:09:21 -05:00
JMC47
932b4abdcf
Merge pull request #13457 from jordan-woyak/efb-access-fix
VideoCommon: Fix out-of-bounds and disabled EFB access.
2025-03-28 18:43:57 -04:00
Joshua Vandaële
3a1a60d4f8
Fix shadowed variable warnings and missing declarations
- PPCSymbolDB:  Resolve shadowed variable warnings
- PerformanceMetrics:  Resolve shadowed variable warnings
- SWEfbInterface: Add missing declarations
2025-03-27 21:48:08 +01:00
Jordan Woyak
e351f03cdf VideoCommon: Fix out-of-bounds and disabled EFB access. 2025-03-26 01:23:16 -05:00
Jordan Woyak
137d1375d4 Enable game-requested anisotropic filtering in Metal backend. 2025-03-17 20:46:24 -05:00
Pokechu22
79a1e480ca Enable anisotropic filtering when the game requests it 2025-03-17 20:46:19 -05:00
JosJuice
8c7ab286f5
Merge pull request #13181 from tygyh/Replace-'reinterpret_cast'
Replace 'reinterpret_cast' with 'static_cast'
2025-03-15 15:31:38 +01:00
JosJuice
3fb4084e25
Merge pull request #13345 from Tilka/unswap_depth
Fix depth texture being incorrectly affected by swap table
2025-03-15 14:30:19 +01:00
Jordan Woyak
5b36c13bfb VideoCommon: Rename Renderer to EFBInterface. 2025-03-12 21:09:16 -05:00
Jordan Woyak
fe2d247acb VideoCommon: Don't merge EFBPoke AsyncRequests. 2025-03-10 16:37:24 -05:00
Jordan Woyak
c18c039089 VideoCommon: Move backend_info out of VideoConfig struct. 2025-03-09 01:42:45 -06:00
Tillmann Karras
7abb9e7974 Sofware/Tev: use unswapped texture samples for depth 2025-02-25 18:45:01 +00:00
Xphalnos
c9bd6a13a9 VideoBackends: Use DXGI 1.6 and D3D11_4 2025-02-02 09:02:35 +01:00
Pokechu22
761e65ed26
Merge pull request #13275 from Pokechu22/d3d12-custom-root-param-index
D3D12: Fix out of bounds root parameter index when per-pixel lighting is disabled
2025-01-20 14:53:40 -08:00
Pokechu22
64514bd8d4 D3D12: Fix out of bounds root parameter index when per-pixel lighting is disabled 2025-01-14 22:30:31 -08:00
OatmealDome
2633b84b98 Vulkan: Only attempt to create a CAMetalLayer on macOS 2025-01-08 13:51:53 -05:00
mitaclaw
d92c68e1de Simplify std::find_if with Common::Contains 2025-01-01 09:52:03 -08:00
JMC47
532a8621da
Merge pull request #13116 from mitaclaw/ranges-modernization-8-trivial-of
Ranges Algorithms Modernization - Of
2024-12-26 16:51:53 -05:00
mitaclaw
140252ffc0 Modernize std::any_of with ranges
In WiimoteReal.cpp, JitRegCache.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those.

In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates.
2024-12-15 19:54:16 -08:00
OatmealDome
e6f335bfcf VKSwapChain: Always use surface formats with a normal sRGB color space if not RGBA16F
Co-authored-by: TellowKrinkle <tellowkrinkle@gmail.com>
2024-12-03 20:49:50 -05:00
Dr. Dystopia
6d44afc7dd Replace 'reinterpret_cast' with 'static_cast' 2024-11-08 07:26:47 +01:00
JMC47
e10821a847
Merge pull request #13104 from TellowKrinkle/MTLLogging
VideoBackends:Metal: Log file on failed pipeline compile
2024-10-19 13:03:52 -04:00
JosJuice
07605bf67c
Merge pull request #13090 from mitaclaw/ranges-modernization-1-trivial
Ranges Algorithms Modernization - Trivial
2024-10-15 17:08:55 +02:00
Pokechu22
937bb2aa2e Cache normals in addition to binormals and tangents
Fixes LIT (https://bugs.dolphin-emu.org/issues/13635). The text does not include normals, but has lighting enabled. With the previous default of (0, 0, 0), lighting was always black (as dot(X, (0, 0, 0)) is always 0). It seems like the normal from the map in the background (0, 0, 1) is re-used.

LIT also has the vertex color enabled while vertex color is not specified, the same as SMS's debug cubes; the default MissingColorValue GameINI value of solid white seems to work correctly in this case.
2024-10-12 10:32:41 -07:00
Tilka
c1832d17f6
Merge pull request #13117 from mitaclaw/ranges-modernization-9-trivial-find
Ranges Algorithms Modernization - Find
2024-10-11 20:27:18 +01:00
mitaclaw
e8d5fb89e4 C++20: Synthesize operator!= From operator==
The inequality operator is automatically generated by the compiler if `operator==` is defined.
2024-10-10 20:23:55 -07:00
mitaclaw
e4fb837f4b Modernize std::find_if with ranges
In BTEmu.cpp, `std::mem_fn` was not necessary for the predicate to compile.
2024-10-10 15:28:11 -07:00
mitaclaw
88a1a5b4f2 Modernize std::set_intersection with ranges 2024-10-10 00:53:48 -07:00
mitaclaw
01d0bdf1bb Modernize std::is_sorted with ranges
In OGLConfig.cpp, `std::views::reverse` is used rather than sorting using `std::ranges::greater` in order to parallel other instances of reverse iteration in the function.
2024-10-10 00:53:48 -07:00
mitaclaw
78440ca335 Modernize std::reverse with ranges 2024-10-10 00:53:48 -07:00
TellowKrinkle
1454934a07 VideoBackends:Metal: Use standardized C++ features over clang builtins 2024-10-06 02:13:48 -05:00
TellowKrinkle
32fd10bd08 VideoBackends:Metal: Log file on failed pipeline compile 2024-10-06 02:13:48 -05:00
TellowKrinkle
9244cded9f VideoBackends:Vulkan: Increase VMA Vulkan Version to 1.2
We now use Vulkan 1.2 if available
2024-10-05 16:51:14 -05:00
JMC47
2d9f789940
Merge pull request #13050 from TellowKrinkle/HKIsNotMVK
Vulkan: Don't do MoltenVK things on Asahi Linux
2024-10-05 00:51:27 -04:00
OatmealDome
ae14abb2fa
Merge pull request #13088 from TellowKrinkle/iOSFixes
VideoBackends:Metal: Fix bbox on newer iOS devices
2024-10-04 17:32:44 -04:00
TellowKrinkle
a267c56412 VideoBackends:Vulkan: Wait until we've confirmed a successful AcquireNextImage before marking semaphores used 2024-10-02 19:22:16 -05:00
TellowKrinkle
7e1a9490c0 VideoBackends:Vulkan: Don't try to present if swapchain acquire failed 2024-10-02 19:22:16 -05:00
TellowKrinkle
70f69c3213 VideoBackends:Metal: subgroup_ops requires Apple7, not Apple6
SIMD-scoped permute operations are Apple6, but reduction operations are Apple7
2024-09-30 23:38:23 -05:00
TellowKrinkle
14feaf4ba8 VideoBackends:Metal: Use ios_use_simdgroup_functions with SPIRV-Cross
It defaults to trying to emulate simdgroup functions on iOS
2024-09-29 23:58:54 -05:00
Tillmann Karras
0a299a4e1e Sw/Tev: drop unused macro 2024-09-24 22:00:03 +01:00
Tillmann Karras
98add9faf0 Sw/Rasterizer: fix two elder typos, AD 2009 2024-09-24 22:00:03 +01:00
TellowKrinkle
dc6ccfb2ab VideoBackends:Vulkan: Use Vulkan 1.2 driverID to detect MoltenVK
Previously we'd assume all Apple GPUs were MoltenVK, including those running on Asahi Linux with open source Honeykrisp drivers.
2024-09-05 22:15:30 -05:00
TellowKrinkle
1416dc7e6a VideoBackends:Vulkan: Consolidate feature checking into one struct 2024-09-05 22:15:29 -05:00
Admiral H. Curtiss
e1b1e4b4cf
Merge pull request #13031 from parona-source/libfmt-11
Add support for libfmt-11
2024-08-31 15:34:48 +02:00
Ali Homafar
02e9a8feaf vulkan: Add line number to vulkan error logger
This is a minor improvement to add line numbers to the LOG_VULKAN_ERROR
define. Basically error logs for Vulkan will now look like:

```
// This
25:03:347 VideoBackends/Vulkan/VulkanLoader.cpp:247 E[Video]: (WaitForCommandBufferCompletion:278) vkWaitForFences failed:  (2: VK_TIMEOUT)

// Instead of
15:45:154 VideoBackends/Vulkan/VulkanLoader.cpp:247 E[Video]: (WaitForCommandBufferCompletion) vkWaitForFences failed:  (2: VK_TIMEOUT)
```
2024-08-28 17:42:54 -04:00
Alfred Wingate
d7c93d87be
Add support for libfmt-11
fmt::join was moved into fmt/ranges.h

Signed-off-by: Alfred Wingate <parona@protonmail.com>
2024-08-22 16:54:35 +03:00
Dr. Dystopia
9602f36248 Remove redundant semicolons 2024-08-20 14:59:54 +02:00
TellowKrinkle
cab6e7c12e Properly link against xxhash
Things using dolphin_find_optional_system_library need to link against the name used there or they won't work with both the system and bundled cases
2024-07-06 16:56:44 -05:00
Luis Condes Diaz
3f64031cbb Migrate Vulkan-Headers to submodule and update to v1.3.288 2024-06-22 08:03:20 +02:00
Admiral H. Curtiss
5c2f73986a
Merge pull request #12537 from TellowKrinkle/MTLSubgroup
VideoCommon: More specific subgroup op bugs
2024-05-21 22:17:22 +02:00