Vladislav Mikhalin
191e64bfa1
renderer: respect zmin/zmax even if clipping is disabled ( #2250 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-27 00:17:23 -08:00
squidbus
a5a1253185
liverpool: Implement PM4 MEM_SEMAPHORE. ( #2235 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-25 04:12:18 -08:00
squidbus
a51c8c17e0
shader_recompiler: Fix image write swizzles. ( #2236 )
2025-01-24 12:47:04 -08:00
squidbus
56f4b8a2b8
shader_recompiler: Implement shader export formats. ( #2226 )
2025-01-24 10:41:58 -08:00
squidbus
d1b9a5adcc
texture_cache: Do not overwrite overlap hit with a miss. ( #2217 )
2025-01-24 10:23:18 +02:00
squidbus
74710116f6
renderer_vulkan: Remove dead code. ( #2228 )
2025-01-24 10:21:56 +02:00
squidbus
91444a0545
liverpool: Fix tiled check for color buffer. ( #2227 )
2025-01-24 10:21:32 +02:00
panzone91
d7c2cb17f3
update extension vector capacity ( #2210 )
2025-01-22 23:53:54 +02:00
squidbus
2a4798cfa6
tile: Fix some tile thickness calculation errors. ( #2203 )
...
* tile: Fix some tile thickness calculation errors.
* tile: Do not pad mip height to tile height.
2025-01-22 09:40:00 +01:00
squidbus
95a30b2b3e
texture_cache: Lock when updating image. ( #2198 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-20 22:38:09 +01:00
squidbus
a3967ccdb4
externals: Update vulkan-headers ( #2197 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-20 14:48:32 +02:00
squidbus
e1132db197
texture_cache: Prevent unregistered images from being tracked. ( #2196 )
2025-01-20 08:33:37 +01:00
squidbus
d14e57f6a8
hotfix: Move some command buffer references down.
...
Prevents references becoming stale due to stream buffer flushes.
2025-01-19 18:45:37 -08:00
DanielSvoboda
80092b6367
Fix SurfaceFormat Format4_4_4_4 ( #2193 )
...
* Fix SurfaceFormat Format4_4_4_4
Pac-Man 256
* add_extension
2025-01-19 15:09:10 -08:00
DanielSvoboda
201f2817ca
Fix SurfaceFormat Format1_5_5_5 - Format5_5_5_1 ( #2191 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* Fix SurfaceFormat Format1_5_5_5 - again
* Fix Format5_5_5_1
2025-01-19 13:55:27 -08:00
DanielSvoboda
17ac63d23a
Fix SurfaceFormat ( #2188 )
2025-01-19 17:47:40 +02:00
Quang Ngô
ec0dfb32b5
Some ImGui tweaks for the game window ( #2183 )
...
* Remove window border
* Remove window rounding
* Set background color to black
2025-01-19 09:03:15 -03:00
squidbus
746f2e091d
tile: Account for thickness in micro tiled size calculation. ( #2185 )
2025-01-19 12:06:31 +01:00
Vladislav Mikhalin
269ce12614
fix build on arch
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-18 16:54:06 +03:00
squidbus
c80151adde
vk_presenter: Fix splash issues. ( #2180 )
2025-01-18 02:29:19 -08:00
squidbus
d361579618
texture_cache: Fix image mip overlap. ( #2177 )
2025-01-18 10:35:44 +01:00
squidbus
12364b197a
renderer_vulkan: Remove swapchain image reinterpretation. ( #2176 )
2025-01-18 01:13:16 -08:00
Quang Ngô
81ad575b22
video_core: Use adaptive mutex on Linux ( #2105 )
...
Fix performance regression with #1973 on SteamDeck
2025-01-17 23:47:38 -08:00
Quang Ngô
9a956f5ed0
renderer_vulkan: Clear blank frame ( #2095 )
...
* renderer_vulkan: Clear blank frame
Fix display of garbage images on startup on some drivers.
* Remove duplicated attachment declarations
* Remove duplicated rendering_info declarations
2025-01-17 23:08:45 -08:00
Vladislav Mikhalin
7b8177f48e
renderer: handle disabled clipping ( #2146 )
...
Co-authored-by: IndecisiveTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2025-01-18 09:20:38 +03:00
polybiusproxy
99a04357d1
don't compile cs with higher shared memory than supported ( #2175 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-17 21:51:33 +01:00
squidbus
9e5b50c866
vk_platform: Clean up unnecessary debug message filters. ( #2171 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-17 10:16:15 +02:00
squidbus
1d3427780a
renderer_vulkan: Fix present related validation errors. ( #2169 )
2025-01-17 10:16:03 +02:00
squidbus
1e5b316ac4
renderer_vulkan: Add debug markers for presenter. ( #2167 )
2025-01-17 10:15:43 +02:00
squidbus
3b474a12f9
shader_recompiler: Improvements to buffer addressing implementation. ( #2123 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-16 18:40:03 -08:00
squidbus
eb49193309
liverpool: Revert queue scope markers. ( #2166 )
2025-01-16 18:24:29 -08:00
Vinicius Rangel
56a6c95730
Render without rendering ( #2152 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* presenter: render the game inside a ImGui window
* presenter: render the previous frame to keep the render rendering
* swapchain: fix swapchain image view format not being converted to unorm
* devtools: fix frame graph timing
2025-01-16 21:27:23 +02:00
squidbus
b3739bea92
renderer_vulkan: Simplify debug marker settings. ( #2159 )
...
* renderer_vulkan: Simplify debug marker settings.
* liverpool: Add scope markers for graphics/compute queues.
* liverpool: Remove unneeded extra label from command buffer markers.
* vk_rasterizer: Add scopes around filtered draw passes.
2025-01-16 12:14:34 +02:00
squidbus
53d0a309cc
liverpool_to_vk: Add R32Uint depth promote. ( #2145 )
2025-01-15 18:33:15 +03:00
squidbus
5040be1640
renderer_vulkan: Handle depth-stencil copies through depth render overrides. ( #2134 )
2025-01-15 08:48:40 +03:00
psucien
394331f206
video_core: detiler: display micro 64bpp ( #2137 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-12 19:25:25 +01:00
squidbus
5c845d4ecc
hotfix: Constrain view layers to actual layers.
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-10 16:30:28 -08:00
squidbus
6ec68f66a9
hotfix: Check correct template for setting binding divisor.
2025-01-10 15:59:20 -08:00
squidbus
e656093d85
shader_recompiler: Fix some image view type issues. ( #2118 )
2025-01-10 12:35:03 -08:00
squidbus
562ed2a025
renderer_vulkan: Simplify vertex binding logic and properly handle null buffers. ( #2104 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* renderer_vulkan: Simplify vertex binding logic and properly handle null buffers.
* renderer_vulkan: Remove need for empty bindVertexBuffers2EXT.
2025-01-10 10:52:12 +02:00
squidbus
4563b6379d
amdgpu: Handle 8-bit float format case for stencil. ( #2092 )
2025-01-10 10:49:08 +02:00
squidbus
725814ce01
shader_recompiler: Improvements to array and cube handling. ( #2083 )
...
* shader_recompiler: Account for instruction array flag in image type.
* shader_recompiler: Check da flag for all mimg instructions.
* shader_recompiler: Convert cube images into 2D arrays.
* shader_recompiler: Move image resource functions into sharp type.
* shader_recompiler: Use native AMD cube instructions when possible.
* specialization: Fix buffer storage mistake.
2025-01-10 10:48:12 +02:00
squidbus
b0d7feb292
video_core: Implement conversion for uncommon/unsupported number formats. ( #2047 )
...
* video_core: Implement conversion for uncommon/unsupported number formats.
* shader_recompiler: Reinterpret image sample output as well.
* liverpool_to_vk: Remove mappings for remapped number formats.
These were poorly supported by drivers anyway.
* resource_tracking_pass: Fix image write swizzle mistake.
* amdgpu: Add missing specialization and move format mapping data to types
* reinterpret: Fix U/SToF input type.
2025-01-07 12:21:49 +02:00
squidbus
c08fc85b72
renderer_vulkan: Fix null buffer views with wrong format. ( #2079 )
2025-01-07 07:00:07 +02:00
psucien
5559f35905
hot-fix: buffers resolve barriers fixed
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-06 22:50:09 +01:00
squidbus
fb67d948b6
vk_resource_pool: Handle eErrorFragmentedPool. ( #2071 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-06 15:31:45 +02:00
squidbus
7cdeb51670
renderer_vulkan: Add debug names to pipelines. ( #2069 )
2025-01-06 15:31:25 +02:00
squidbus
c0f57df4e6
vk_instance: Enable additional debug tagging if crash diagnostics is enabled. ( #2066 )
2025-01-06 00:45:54 +02:00
Mahmoud Adel
79663789bd
bump up vector size to 64 in image_info and image_binding ( #2055 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
solves ```boost::bad_alloc``` error when compiling shaders
2025-01-05 00:02:37 +02:00
psucien
9d3143231c
macOS build fixed; indirect_args_addr moved out from queues context
2025-01-04 22:44:46 +01:00
psucien
7459d9c333
hot-fix: amdgpu: use different indirect dispatch packet on ASC
2025-01-04 22:23:12 +01:00
squidbus
78a32a3c0f
image_info: Add Neo mode macro tile extents. ( #2045 )
2025-01-04 11:44:14 +01:00
squidbus
7153bc8d8f
kernel: Check PSF for neo mode support. ( #2028 )
2025-01-04 00:29:09 +01:00
psucien
8e8671323a
texture_cache: slight detilers refactoring ( #2036 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-03 21:42:23 +01:00
squidbus
c2be12f009
amdgpu: Add some resource bits for Neo mode. ( #2035 )
2025-01-03 21:25:20 +01:00
squidbus
9434cae458
gnmdriver: Implement neo mode differences. ( #2011 )
...
* gnmdriver: Implement neo mode differences.
* gnmdriver: Move init sequences to separate file.
2025-01-03 21:22:27 +01:00
¥IGA
2951788afc
texture_cache: Adding some missing textures ( #2031 )
2025-01-03 20:11:24 +01:00
psucien
345d55669e
texture_cache: 8bpp macro detiler
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-02 23:27:18 +01:00
TheTurtle
77d2172441
renderer_vulkan: Cleanup and improve barriers in caches ( #1865 )
...
* texture_cache: Stricter barriers on image upload
* buffer_cache: Stricter barrier for vkCmdUpdateBuffer
* vk_rasterizer: Barrier also normal buffers and make it apply to all stages
* texture_cache: Minor barrier cleanup
* Batch image and buffer barriers in a single command
* clang format
2025-01-02 19:43:56 +01:00
psucien
f7a8e2409c
hot-fix: debug build
2025-01-02 19:41:15 +01:00
liberodark
596f4cdf0e
Fix amdgpu & other issues ( #2000 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-02 15:39:39 +02:00
TheTurtle
c25447097e
buffer_cache: Improve buffer cache locking contention ( #1973 )
...
* Improve buffer cache locking contention
* buffer_cache: Revert some changes
* clang fmt 1
* clang fmt 2
* clang fmt 3
* buffer_cache: Fix build
2025-01-02 15:39:02 +02:00
hspir404
6862c9aad7
Speed up LiverpoolToVK::SurfaceFormat ( #1982 )
...
* Speed up LiverpoolToVK::SurfaceFormat
In Bloodborne this shows up as the function with the very highest cumulative "exclusive time". This is true both in scenes that perform poorly, and scenes that perform well.
I took (approximately) 10s samples using an 8khz sampling profiler.
In the Nightmare Grand Cathedral (looking towards the stairs, at the rest of the level):
- Reduced total time from 757.34ms to 82.61ms (out of ~10000ms).
- Reduced average frame times by 2ms (though according to the graph, the gap may be as big as 9ms every N frames).
In the Hunter's Dream (in the spawn position):
- Reduced the total time from 486.50ms to 53.83ms (out of ~10000ms).
- Average frame times appear to be roughly the same.
These are profiles of the change vs the version currently in the main branch. These improvements also improve things in the `threading` branch. They might improve them even more in that branch, but I didn't bother keeping track of my measurements as well in that branch. I believe this change will still be useful even when that branch is stabilized and merged.
It could be there are other bottlenecks in rendering on this branch that are preventing this code from being the critical path in places like the Hunter's Dream, where performance isn't currently as constrained. That might explain why the reduction in call times isn't resulting in a higher frame rate.
* Implement SurfaceFormat with derived lookup table instead of switch
* Clang format fixes
2025-01-02 15:38:51 +02:00
Mahmoud Adel
099e685bff
add R16Uint to Format Detiler ( #1995 )
...
helps with Matterfall
2025-01-02 14:29:57 +02:00
polybiusproxy
a76e8f0211
clang-format
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-01 13:21:00 +01:00
psucien
d69341fd31
hot-fix: detiler: forgotten lut optimizations
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-01-01 03:40:28 +01:00
squidbus
927dc6d95c
vk_platform: Fix incorrect type for MVK debug flag. ( #1993 )
2024-12-31 12:38:30 +02:00
squidbus
41d64a200d
shader_recompiler: Add swizzle support for unsupported formats. ( #1869 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* shader_recompiler: Add swizzle support for unsupported formats.
* renderer_vulkan: Rework MRT swizzles and add unsupported format swizzle support.
* shader_recompiler: Clean up swizzle handling and handle ImageRead storage swizzle.
* shader_recompiler: Fix type errors
* liverpool_to_vk: Remove redundant clear color swizzles.
* shader_recompiler: Reduce CompositeConstruct to constants where possible.
* shader_recompiler: Fix ImageRead/Write and StoreBufferFormatF32 types.
* amdgpu: Add a few more unsupported format remaps.
2024-12-31 06:14:47 +02:00
squidbus
38f1cc2652
renderer_vulkan: Render polygons using triangle fans. ( #1969 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-29 12:30:37 +01:00
Quang Ngô
1bc27135e3
renderer_vulkan: fix deadlock when resizing the SDL window ( #1860 )
...
* renderer_vulkan: Fix deadlock when resizing the SDL window
* Address review comment
2024-12-29 13:22:35 +02:00
TheTurtle
f09a95453e
hot-fix: Correct queue id in dispatch indirect
...
I missed this
2024-12-29 12:48:45 +02:00
Mahmoud Adel
e952013fe0
add EventWrite and DispatchIndirect to ProcessCompute ( #1948 )
...
* add EventWrite and DispatchIndirect to ProcessCompute
helps Alienation go Ingame
* apply review changes
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
---------
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-12-29 12:47:15 +02:00
Quang Ngô
202c1046a1
Fix loading RenderDoc in offline mode for Linux ( #1968 )
2024-12-29 12:36:29 +02:00
Quang Ngô
99e1e028c0
texture_cache: Don't read max ansio value if not aniso filter ( #1942 )
...
Fix Sonic Forces.
2024-12-28 13:18:56 +02:00
Quang Ngô
0351b864d0
texture_cache: Enable anisotropic filtering ( #1872 )
2024-12-27 16:47:26 +02:00
squidbus
a86ee7e7f5
vk_platform: Enable MoltenVK debug if crash diagnostics is enabled. ( #1887 )
...
* vk_platform: Enable MoltenVK debug if crash diagnostics is enabled.
* build: Make sure MoltenVK gets re-bundled when changed.
2024-12-27 16:46:31 +02:00
¥IGA
cf84c46a49
Fix for D32Sfloat and R8Snorm Tiled image ( #1898 )
...
* Fix for D32Sfloat Tiled image
* Fix for R8Snorm Tiled image
2024-12-27 16:43:44 +02:00
Vinicius Rangel
edc027a8bc
Devtools IV ( #1910 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* devtools: fix popen in non-windows environment
* devtools: fix frame crash assertion when hidden
* devtools: add search to shader list
* devtools: add copy name to shader list
* devtools: frame dump: search by shader name
2024-12-26 23:08:47 +02:00
¥IGA
3ab118837a
Fix for D16Unorm Tiled image ( #1863 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-25 16:06:12 +02:00
squidbus
3c111202e1
renderer_vulkan: Make sure at least one viewport is set ( #1859 )
2024-12-25 16:05:51 +02:00
squidbus
a89c29c2ca
shader_recompiler: Rework image read/write emit. ( #1819 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-25 01:13:32 +02:00
squidbus
6d728ec7ed
renderer_vulkan: Enable LDS barriers for MoltenVK ( #1866 )
2024-12-24 23:03:04 +02:00
Daniel R.
c284cf72e1
Switch remaining CRLF terminated files to LF
2024-12-24 13:56:31 +01:00
squidbus
0a4453b912
renderer_vulkan: Simplify depth pipeline state and move stencil to dynamic state. ( #1854 )
...
* renderer_vulkan: Simplify depth pipeline state and move stencil to dynamic state.
* Change graphics key depth-stencil flags to bitfields.
2024-12-24 13:45:11 +02:00
TheTurtle
092d42e981
renderer_vulkan: Implement rectlist emulation with tessellation ( #1857 )
...
* renderer_vulkan: Implement rectlist emulation with tessellation
* clang format
* renderer_vulkan: Use tessellation for quad primitive as well
* vk_rasterizer: Handle viewport enable flags
* review
* shader_recompiler: Fix quad/rect list FS passthrough semantics.
* spirv: Bump to 1.5
* remove pragma
---------
Co-authored-by: squidbus <175574877+squidbus@users.noreply.github.com>
2024-12-24 13:28:47 +02:00
psucien
c2e9c877dd
hot-fix: missing fce barrier
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-23 18:20:37 +01:00
Quang Ngô
400da1aa8d
Handle swapchain recreation ( #1830 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-23 16:21:48 +02:00
Emulator-Team-2
94f861588d
added B5G6R5UnormPack16 format ( #1856 )
2024-12-23 15:52:29 +02:00
psucien
2dc5755799
build: exclude Tracy from release builds
2024-12-22 22:51:48 +01:00
psucien
8abc43a03d
texture_cache: 32bpp and 64bpp macro detilers ( #1852 )
...
* added 32bpp macro detiler
* added 64bpp macro detiler
* consider 3d depth alignment in size calculations
2024-12-22 19:43:44 +01:00
Vladislav Mikhalin
7fe4df85ab
Clear color attachment if FCE was invoked before any draws ( #1851 )
...
* Clear RT if FCE was invoked before any draws
Co-authored-by: psucien <bad_cast@protonmail.com>
* address review comments
---------
Co-authored-by: psucien <bad_cast@protonmail.com>
2024-12-22 18:12:43 +01:00
setepenre
8a409d86d4
post-processing: rework gamma correction ( #1756 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-22 16:18:07 +01:00
squidbus
14dc136832
renderer_vulkan: Various attachment cleanup and fixes. ( #1795 )
2024-12-22 16:08:48 +02:00
TheTurtle
5eebb04de9
vk_rasterizer: hot fix
2024-12-22 15:31:10 +02:00
TheTurtle
fb2c035c05
vk_rasterizer: Fix stencil clears ( #1840 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-22 02:49:42 +02:00
Daniel R.
8d8bb05055
renderer_vulkan: add support for Polygon draws ( #1798 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-21 10:20:24 +01:00
TheTurtle
188eebb92a
ir: Add heuristic based LDS barrier pass ( #1801 )
...
* ir: Add heuristic based LDS barrier pass
* Attempts to insert barriers after zero-depth divergant conditional blocks in shaders that use shared memory
* lds_barriers: Limit to nvidia
* Intel has historically had problems with cs barriers, will debug other time
2024-12-19 10:18:28 +02:00
Mahmoud Adel
1e08099036
add R8Uint in image Detiling ( #1812 )
...
used by InFamous, and maybe other games
2024-12-18 22:06:30 +02:00
squidbus
ccfb1bbfa8
vk_instance: Add additional fallback for missing D16UnormS8Uint. ( #1810 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-18 07:56:08 +02:00
squidbus
87773a417b
mac: Choose whether system Vulkan is needed at runtime. ( #1780 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-17 15:04:19 +02:00
psucien
e7c4ffe032
hot-fix: Tracy operation restored; memory leak fix as a bonus
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-15 20:53:29 +01:00
psucien
0fd1ab674b
GPU processor refactoring ( #1787 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* coroutine code prettification
* asc queues submission refactoring
* better asc ring context handling
* final touches and review notes
* even more simplification for context saving
2024-12-15 00:54:46 +02:00
squidbus
8b88344679
vk_instance: Remove unused dynamic state 2 features struct ( #1791 )
2024-12-14 22:46:19 +02:00
TheTurtle
e9ede8d627
Revert "DmaData and Recompiler fixes ( #1775 )" ( #1784 )
...
This reverts commit cafd40f2c2 .
2024-12-14 16:17:14 +02:00
squidbus
e752f04cde
shader_recompiler: Fixups from stencil changes ( #1776 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-14 14:33:24 +02:00
Vladislav Mikhalin
cafd40f2c2
DmaData and Recompiler fixes ( #1775 )
...
* liverpool: fix dmadata packet handling
* recompiler: emit a label right after s_branch to prevent dead code interferrence
* specialize barriers
2024-12-14 14:33:06 +02:00
baggins183
3c0c921ef5
Tessellation ( #1528 )
...
* shader_recompiler: Tessellation WIP
* fix compiler errors after merge
DONT MERGE set log file to /dev/null
DONT MERGE linux pthread bb fix
save work
DONT MERGE dump ir
save more work
fix mistake with ES shader
skip list
add input patch control points dynamic state
random stuff
* WIP Tessellation partial implementation. Squash commits
* test: make local/tcs use attr arrays
* attr arrays in TCS/TES
* dont define empty attr arrays
* switch to special opcodes for tess tcs/tes reads and tcs writes
* impl tcs/tes read attr insts
* rebase fix
* save some work
* save work probably broken and slow
* put Vertex LogicalStage after TCS and TES to fix bindings
* more refactors
* refactor pattern matching and optimize modulos (disabled)
* enable modulo opt
* copyright
* rebase fixes
* remove some prints
* remove some stuff
* Add TCS/TES support for shader patching and use LogicalStage
* refactor and handle wider DS instructions
* get rid of GetAttributes for special tess constants reads. Immediately replace some upon seeing readconstbuffer. Gets rid of some extra passes over IR
* stop relying on GNMX HsConstants struct. Change runtime_info.hs_info and some regs
* delete some more stuff
* update comments for current implementation
* some cleanup
* uint error
* more cleanup
* remove patch control points dynamic state (because runtime_info already depends on it)
* fix potential problem with determining passthrough
---------
Co-authored-by: IndecisiveTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-12-14 12:56:17 +02:00
squidbus
3e22622508
renderer_vulkan: Remove some fallbacks and misc format queries that are no longer needed. ( #1773 )
2024-12-14 12:04:30 +02:00
squidbus
8caca4df32
shader_recompiler: Support VK_AMD_shader_image_load_store_lod for IMAGE_STORE_MIP ( #1770 )
...
* shader_recompiler: Support VK_AMD_shader_image_load_store_lod for IMAGE_STORE_MIP
* emit_spirv: Fix missing extension declaration.
2024-12-14 12:03:42 +02:00
Diego Cea López
715ac8a279
vk_shader_hle: Don't alter the order of the skipped copies. ( #1757 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* vk_shader_hle: Don't alter the order of the skipped copies.
* Simplification.
* Format.
* More simplification.
2024-12-14 00:27:09 +02:00
TheTurtle
722a0e36be
graphics: Improve handling of color buffer and storage image swizzles ( #1763 )
...
* liverpool_to_vk: Remove wrong component swap formats
* shader_recompiler: Handle storage and buffer format swizzles
* shader_recompiler: Skip unsupported depth export
* image_view: Remove image format swizzle
* Platform support is not always guaranteed
2024-12-13 21:49:37 +02:00
squidbus
028be3ba5d
shader_recompiler: Emulate unnormalized sampler coordinates in shader. ( #1762 )
...
* shader_recompiler: Emulate unnormalized sampler coordinates in shader.
* Address review comments.
2024-12-13 21:49:07 +02:00
TheTurtle
cfbd869126
texture_cache: Improve support for stencil reads ( #1758 )
...
* texture_cache: Improve support for stencil reads
* libraries: Supress some spammy logs
* core: Support loading font libraries
* texture_cache: Remove assert
2024-12-13 18:28:19 +02:00
Diego Cea López
1e3d034f96
Fix HLE buffer copy not executed when there's only 1 copy. ( #1754 )
2024-12-12 22:45:56 +02:00
squidbus
ec8e5d5ef1
renderer_vulkan: Fix some color attachment indexing issues. ( #1755 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-12 20:45:18 +02:00
Osyotr
7aa868562c
video_core: add eR5G5B5A1UnormPack16 support to the detiler ( #1741 )
2024-12-12 15:45:59 +02:00
squidbus
3d1e332c6f
renderer_vulkan: Disable culling for RectList. ( #1749 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-12 11:05:59 +02:00
squidbus
714605c6a7
renderer_vulkan: Require exact image format for resolve pass. ( #1742 )
2024-12-11 21:51:39 +01:00
squidbus
14f7dc3527
cache: Invalidate pages for file reads. ( #1726 )
...
* cache: Invalidate pages for file reads.
* texture_cache: Simplify invalidate intersection check.
* vk_rasterizer: Make aware of mapped memory ranges.
* buffer_cache: Remove redundant page calculations.
Called functions will convert to page numbers/addresses themselves.
* file_system: Simplify memory invalidation and add a few missed cases.
2024-12-11 21:11:24 +02:00
squidbus
e612e881ac
renderer_vulkan: Bind null color attachments when target is masked out. ( #1740 )
...
* renderer_vulkan: Bind null color attachments when target is masked out.
* Simplify setting null color attachment
2024-12-11 21:10:40 +02:00
Daniel R.
2a953391ef
liverpool: implement Rewind and IndirectBuffer packets
2024-12-11 19:40:45 +01:00
¥IGA
51bf98a7b5
Fix for R4G4B4A4UnormPack16 Tiled image ( #1738 )
2024-12-11 16:07:33 +02:00
squidbus
e5e1aba241
renderer_vulkan: Introduce shader HLE system with copy shader implementation. ( #1683 )
...
* renderer_vulkan: Introduce shader HLE system with copy shader implementation.
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
* buffer_cache: Handle obtaining buffer views partially within buffers.
* vk_shader_hle: Make more efficient
---------
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-12-10 14:44:08 +02:00
Vinicius Rangel
f1b23c616e
Devtools - Shader editing ( #1705 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* devtools: shader editing and compiling
* devtools: patch shader at runtime
* devtools: shader editing load patch even with config disabled
2024-12-09 21:11:11 +01:00
squidbus
f347d3df18
image_view: Correct view format for D16Unorm images as well. ( #1708 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-08 21:53:29 +01:00
Daniel R.
1793fd4df0
format
2024-12-08 16:05:36 +01:00
Daniel R.
a88850fec6
video_core/amdgpu: fix calculation of lod range
2024-12-08 16:02:38 +01:00
Daniel R.
0b672a08ac
video_core: improve image cube heuristic
2024-12-08 15:57:51 +01:00
squidbus
7d546f32d8
image_view: Add more BGRA storage format swizzles. ( #1693 )
2024-12-08 10:19:39 +02:00
TheTurtle
8ee672fe32
hot-fix: Allow unpriviledged userfaultfd
2024-12-08 00:10:20 +02:00
¥IGA
2266622dcf
Support for Vulkan 1.4 ( #1665 )
2024-12-07 19:41:41 +02:00
psucien
941a668f78
hot-fix: obtain cmdbuf for dispatches after cache ops
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
This fixes cmdbuf being in incorrect state after scheduler rotation on flush
2024-12-07 10:30:36 +01:00
Vladislav Mikhalin
8eacb88a86
recompiler: fixed fragment shader built-in attribute access ( #1676 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* recompiler: fixed fragment shader built-in attribute access
* handle en/addr separately
* handle other registers as well
2024-12-07 01:20:09 +02:00
IndecisiveTurtle
357b7829c3
hot-fix: Silence depth macrotiled warning
2024-12-06 21:50:25 +02:00
IndecisiveTurtle
6acfdd5e33
buffer_cache: Bump usable address space to 40bits
...
* Fixes crashes in games that use the upper region of user area
2024-12-06 20:00:21 +02:00
TheTurtle
9e618c0e0c
video_core: Add multipler to handle special cases of texture buffer stride mismatch ( #1640 )
...
* page_manager: Enable userfaultfd by default
* Much faster than page faults and causes less problems
* shader_recompiler: Add texel buffer multiplier
* Fixes format mismatch assert when vsharp stride is multiple of format stride
* shader_recompiler: Specialize UBOs on size
* Some games can perform manual vertex pulling and thus bind read only buffers of varying size. We only recompile when the vsharp size is larger than size in shader, in opposite case its not needed
* clang format
2024-12-06 19:54:59 +02:00
squidbus
d05846a327
specialization: Fix fetch shader field type ( #1675 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-06 12:59:55 +02:00
squidbus
17abbcd74d
misc: Fix clang format ( #1673 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-06 02:21:35 +02:00
IndecisiveTurtle
77da8bac00
core: Return proper address of eh frame/add more opcodes
2024-12-06 00:47:11 +02:00
TheTurtle
22a2741ea0
shader_recompilers: Improvements to SSA phi generation and lane instruction elimination ( #1667 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* shader_recompiler: Add use tracking for Insts
* ssa_rewrite: Recursively remove phis
* ssa_rewrite: Correct recursive trivial phi elimination
* ir: Improve read lane folding pass
* control_flow: Avoid adding unnecessary divergant blocks
* clang format
* externals: Update ext-boost
---------
Co-authored-by: Frodo Baggins <baggins31084@proton.me>
2024-12-05 23:14:16 +02:00
Marcin Mikołajczyk
642dedea8c
Handle INDIRECT_BUFFER_CONST in ProcessCeUpdate ( #1613 )
2024-12-05 23:09:59 +02:00
psucien
37f4bad2b7
video_core: fix for targets clears and copies ( #1670 )
2024-12-05 23:09:22 +02:00
Daniel R.
98f0cb65d7
The way to Unity, pt.1 ( #1659 )
2024-12-05 17:21:35 +01:00
squidbus
920acb8d8b
renderer_vulkan: Parse fetch shader per-pipeline ( #1656 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* shader_recompiler: Read image format info directly from sharps instead of storing in shader info.
* renderer_vulkan: Parse fetch shader per-pipeline
* Few minor fixes.
* shader_recompiler: Specialize on vertex attribute number types.
* shader_recompiler: Move GetDrawOffsets to fetch shader
2024-12-04 13:03:47 +02:00
squidbus
74b091fd08
renderer_vulkan: Add support for indexed QuadList draw. ( #1661 )
2024-12-04 10:15:58 +01:00
psucien
f0b75289c8
video_core: few detiler formats added
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-12-02 22:24:54 +01:00
TheTurtle
eb844b9b63
shader_recompiler: Implement manual barycentric interpolation path ( #1644 )
...
* shader_recompiler: Implement manual barycentric interpolation path
* clang format
* emit_spirv: Fix typo
* emit_spirv: Simplify variable definition
* spirv_emit: clang format
2024-12-02 23:20:54 +02:00
Vinicius Rangel
0835dc71b3
More devtools stuff ( #1637 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* devtools: memory map viewer
* devtools: batch highlight only for non-group viewer
* devtools: fix not showing entire user data
* devtools: shader debug viewer
* devtools: add more reg naming
2024-12-01 19:34:29 +01:00
psucien
f658fc58d1
Merge pull request #1630 from vladmikhalin/fix-missing-rts
...
Fixed incorrectly skipped RTs
2024-12-01 16:47:25 +01:00
TheTurtle
5b6e0ab238
core: Library cleanup ( #1631 )
...
* core: Split error codes into separate files
* Reduces build times and is cleaner
* core: Bring structs and enums to codebase style
* core: More style changes
2024-11-30 22:37:36 +02:00
Vinicius Rangel
2002e37ce9
Allow shader patching ( #1633 )
2024-11-30 20:15:55 +01:00
Vladislav Mikhalin
c0d43a1a5f
Fixed incorrectly skipped RTs
2024-11-30 17:05:08 +03:00
psucien
d6d1ec4f22
hot-fix: apply vgt index offset to draw commands
2024-11-29 14:17:53 +01:00
Vladislav Mikhalin
18a36c5daa
Fixed false-positive image reuploads ( #1557 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* Fixed false-positive image reuploads
* Fixed userfaultfd path, removed dead code, simplified calculations
* oopsie
* track potentially dirty images and hash them
* untrack only first page of the image in case of head access
* rebase, initialize hash, fix bounds check
* include image tail in the calculations
2024-11-26 22:45:15 +02:00
psucien
cd4f48cb8d
Revert "hot-fix: downgrade Nx1 2D render targets to 1D" due to regression
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
This reverts commit cea6d87472 .
2024-11-25 22:14:53 +01:00
psucien
cea6d87472
hot-fix: downgrade Nx1 2D render targets to 1D
2024-11-25 20:52:09 +01:00
psucien
001b94e802
hot-fix: skip indirect draw for quad lists
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* needs to be fixed properly with indirect args re-packing
2024-11-24 18:33:38 +01:00
psucien
3d95ad0e3a
Image binding and texture cache interface refactor (1/2) ( #1481 )
...
* video_core: texture_cache: interface refactor and better overlap handling
* resources binding moved into vk_rasterizer
* remove `virtual` flag leftover
2024-11-24 17:07:51 +01:00
psucien
16e1d679dc
video_core: clean-up of indirect draws logic ( #1589 )
2024-11-24 15:43:28 +01:00
psucien
d7d28aa8da
video_core: restored presenter aspect calculations ( #1583 )
...
Build and Release / reuse (push) Has been cancelled
Build and Release / clang-format (push) Has been cancelled
Build and Release / get-info (push) Has been cancelled
Build and Release / windows-sdl (push) Has been cancelled
Build and Release / windows-qt (push) Has been cancelled
Build and Release / macos-sdl (push) Has been cancelled
Build and Release / macos-qt (push) Has been cancelled
Build and Release / linux-sdl (push) Has been cancelled
Build and Release / linux-qt (push) Has been cancelled
Build and Release / pre-release (push) Has been cancelled
* video_core: restored presenter aspect calculations
* code simplification
2024-11-23 11:46:31 +01:00
georgemoralis
9ed07f6f6e
@Roamic's hot region fix ( #1570 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-11-22 14:53:16 +02:00
TheTurtle
c4506da0ae
kernel: Rewrite pthread emulation ( #1440 )
...
* libkernel: Cleanup some function places
* kernel: Refactor thread functions
* kernel: It builds
* kernel: Fix a bunch of bugs, kernel thread heap
* kernel: File cleanup pt1
* File cleanup pt2
* File cleanup pt3
* File cleanup pt4
* kernel: Add missing funcs
* kernel: Add basic exceptions for linux
* gnmdriver: Add workload functions
* kernel: Fix new pthreads code on macOS. (#1441 )
* kernel: Downgrade edeadlk to log
* gnmdriver: Add sceGnmSubmitCommandBuffersForWorkload
* exception: Add context register population for macOS. (#1444 )
* kernel: Pthread rewrite touchups for Windows
* kernel: Multiplatform thread implementation
* mutex: Remove spamming log
* pthread_spec: Make assert into a log
* pthread_spec: Zero initialize array
* Attempt to fix non-Windows builds
* hotfix: change incorrect NID for scePthreadAttrSetaffinity
* scePthreadAttrSetaffinity implementation
* Attempt to fix Linux
* windows: Address a bunch of address space problems
* address_space: Fix unmap of region surrounded by placeholders
* libs: Reduce logging
* pthread: Implement condvar with waitable atomics and sleepqueue
* sleepq: Separate and make faster
* time: Remove delay execution
* Causes high cpu usage in Tohou Luna Nights
* kernel: Cleanup files again
* pthread: Add missing include
* semaphore: Use binary_semaphore instead of condvar
* Seems more reliable
* libraries/sysmodule: log module on `sceSysmoduleIsLoaded`
* libraries/kernel: implement `scePthreadSetPrio`
---------
Co-authored-by: squidbus <175574877+squidbus@users.noreply.github.com>
Co-authored-by: Daniel R. <47796739+polybiusproxy@users.noreply.github.com>
2024-11-21 22:59:38 +02:00
Daniel R.
e968b1c23f
video_core/amdgpu: heuristic for shader binary info
...
Games can strip the first shader instruction (meant for debugging) which we rely on for obtaining shader information (e.g. LittleBigPlanet 3). For this reason, we start a search through the code start until we arrive at the shader binary info.
2024-11-21 19:24:13 +01:00
psucien
c55d7fbb6a
Proper MSAA surfaces support ( #1560 )
2024-11-21 12:08:52 +02:00
psucien
3d04765a3f
Respect game brightness settings ( #1559 )
...
* `RendererVulkan` -> `Presenter`
* support for Video Out gamma setting
* sRGB hack removed
* added post process pass to presenter
* splash functionality restored
2024-11-21 12:06:53 +02:00
psucien
e98fab4b58
hot-fix: correct M-tiled surface size calculation when mip is less than a tile
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-11-21 00:04:46 +01:00
squidbus
e585330744
image_view: Use array view for color/depth buffers with multiple layers. ( #1556 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-11-20 20:24:30 +02:00
Vladislav Mikhalin
c45af9a2ca
Fix border color ( #1548 )
2024-11-19 18:55:05 +02:00
psucien
8fbd9187f8
libraries: gnmdriver: few more functions implemented ( #1544 )
Build and Release / reuse (push) Has been cancelled
Build and Release / clang-format (push) Has been cancelled
Build and Release / get-info (push) Has been cancelled
Build and Release / windows-sdl (push) Has been cancelled
Build and Release / windows-qt (push) Has been cancelled
Build and Release / macos-sdl (push) Has been cancelled
Build and Release / macos-qt (push) Has been cancelled
Build and Release / linux-sdl (push) Has been cancelled
Build and Release / linux-qt (push) Has been cancelled
Build and Release / pre-release (push) Has been cancelled
2024-11-18 11:23:21 +02:00
Vladislav Mikhalin
e1fecda74f
Fix depth bias ( #1538 )
Build and Release / reuse (push) Has been cancelled
Build and Release / clang-format (push) Has been cancelled
Build and Release / get-info (push) Has been cancelled
Build and Release / windows-sdl (push) Has been cancelled
Build and Release / windows-qt (push) Has been cancelled
Build and Release / macos-sdl (push) Has been cancelled
Build and Release / macos-qt (push) Has been cancelled
Build and Release / linux-sdl (push) Has been cancelled
Build and Release / linux-qt (push) Has been cancelled
Build and Release / pre-release (push) Has been cancelled
2024-11-16 19:17:43 +02:00
squidbus
176d222519
vk_pipeline_cache: Skip pipelines with geometry shaders when unsupported. ( #1486 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-11-07 14:57:31 +02:00
Lander Gallastegi
aa4c6c0178
shader_recompiler: patch fmask access instructions ( #1439 )
...
* Fix multisample texture fetch
* Patch some fmask reads
* clang-format
* Assert insteed of ignore, coordinate fixes
* Patch ImageQueryDimensions
2024-11-05 22:39:57 +01:00
baggins183
9ec75c3feb
Implement shader resource tables ( #1165 )
...
* Implement shader resource tables
* fix after rebase + squash
* address some review comments
* fix pipeline_common
* cleanup debug stuff
* switch to using single codegenerator
2024-11-01 08:55:53 +02:00
Daniel R.
8b139ff5fa
clang-format
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-30 14:46:22 +01:00
Daniel R.
1620481331
vk_compute_pipeline: Add missing meta check
2024-10-30 14:03:53 +01:00
psucien
a8d2684929
hot-fix: proper calculation of image samples num
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-23 23:11:01 +02:00
squidbus
7654a08d9a
vulkan: Report only missing format feature flags. ( #1420 )
2024-10-21 13:17:39 +03:00
Lander Gallastegi
8e08756b6e
Handle color control mode resolve ( #1413 )
Build and Release / reuse (push) Has been cancelled
Build and Release / clang-format (push) Has been cancelled
Build and Release / get-info (push) Has been cancelled
Build and Release / windows-sdl (push) Has been cancelled
Build and Release / windows-qt (push) Has been cancelled
Build and Release / macos-sdl (push) Has been cancelled
Build and Release / macos-qt (push) Has been cancelled
Build and Release / linux-sdl (push) Has been cancelled
Build and Release / linux-qt (push) Has been cancelled
Build and Release / pre-release (push) Has been cancelled
2024-10-20 13:14:01 +03:00
squidbus
5a071f3137
liverpool_to_vk: Add more surface format mappings. ( #1418 )
2024-10-20 13:05:54 +03:00
TheTurtle
87f8fea4de
renderer_vulkan: Commize and adjust buffer bindings ( #1412 )
...
* shader_recompiler: Implement finite cmp class
* shader_recompiler: Implement more opcodes
* renderer_vulkan: Commonize buffer binding
* liverpool: More dma data impl
* fix
* copy_shader: Handle additional instructions from Knack
* translator: Add V_CMPX_GE_I32
2024-10-19 15:30:58 +03:00
Herman Semenoff
96ea686eb6
Fixed return strict const iterator, replace to range-based loop C++17 and code refactor ( #548 )
...
Signed-off-by: Herman Semenov <GermanAizek@yandex.ru>
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-10-18 11:06:11 +03:00
psucien
ac6b4a625d
hot-fix: address check in mips overlap heuristic
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-17 23:06:58 +02:00
psucien
b4ced58acc
hot-fix: a fallback when overlap resolve fails
2024-10-16 23:46:20 +02:00
Vinicius Rangel
25de4d6b65
Devtools improvements I ( #1392 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* devtools: fix showing entire depth instead of bits
* devtools: show button for stage instead of menu bar
- fix batch view dockspace not rendering when window collapsed
* devtools: removed useless "Batch" collapse & don't collapse last batch
* devtools: refactor DrawRow to templating
* devtools: reg popup size adjusted to the content
* devtools: better window names
* devtools: regview layout compacted
* devtools: option to show collapsed frame dump
keep most popups open when selection changes
best popup windows positioning
* devtools: show compute shader regs
* devtools: tips popup
2024-10-16 13:12:46 +03:00
Lander Gallastegi
877cda9b9a
video_core: Rework clear values ( #1381 )
...
* Clear color convertion
* Add missing formats
* Add swap handling
* Format bits and offsets
* clang-format
* Make num_components const
* Initialize alpha to 1
* Handle SnormNz as Snorm
* Don0t leave accidental nonzero values
* parallel3 for linux-qt
* Move number_utils to common
2024-10-16 12:55:45 +03:00
psucien
09725bd921
hot-fix: unexpected pass break on indirect args buffer obtaining
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-14 22:33:06 +02:00
Vinicius Rangel
cf2e617f08
Devtools - Inspect regs/User data/Shader disassembly ( #1358 )
...
* devtools: pm4 - show markers
* SaveDataDialogLib: fix compile with mingw
* devtools: pm4 - show program state
* devtools: pm4 - show program disassembly
* devtools: pm4 - show frame regs
* devtools: pm4 - show color buffer info as popup
add ux improvements for open new windows with shift+click
better window titles
* imgui: skip all textures to avoid hanging with crash diagnostic enabled
not sure why this happens :c
* devtools: pm4 - show reg depth buffer
2024-10-13 15:02:22 +03:00
korenkonder
6e986f8133
video_core: Implement sceGnmInsertPushColorMarker ( #989 )
2024-10-10 18:03:12 +03:00
TheTurtle
100036aecf
spirv: Flush denormals if possible ( #1302 )
2024-10-10 17:47:39 +03:00
psucien
c9f894c45a
hot-fix: catch device loss on presentation (prevents deadlock in waiting)
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-09 20:44:38 +02:00
Daniel R.
873fbc469b
Fix spacing
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-09 16:52:56 +02:00
voguelike
6fe26173dc
sophisticated fix for amd gpu + reshade instead of workaround ( #1282 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2024-10-09 09:28:25 +03:00
squidbus
20915eb5b8
core: Add support for Neo mode memory size. ( #1196 )
2024-10-08 10:29:05 +03:00
squidbus
60092ce849
vulkan: Use view of null buffer for texel buffers if nullDescriptor not supported. ( #1231 )
2024-10-06 02:25:12 +03:00
psucien
927bb0c175
Initial support of Geometry shaders ( #1244 )
...
* video_core: initial GS support
* fix for components mapping; missing prim type
2024-10-06 01:26:50 +03:00
squidbus
5bb45dc7ba
vulkan: Respect maximum sampler LOD bias. ( #1254 )
2024-10-06 01:05:24 +03:00
squidbus
8576d5e72c
shader_recompiler: Set array size to max UBO size when 0. ( #1251 )
...
* shader_recompiler: Set array size to max UBO size when 0.
* vulkan: Account for fallbacks when setting depth attachment format.
2024-10-05 22:31:52 +03:00
squidbus
ee57c2fd69
vulkan: Fix two more validation errors. ( #1250 )
2024-10-05 21:35:02 +03:00
squidbus
be411b37d4
vulkan: Fix dynamic vertex binding stride validation errors. ( #1229 )
2024-10-04 07:51:08 +03:00
Vinicius Rangel
af398e3684
Devtools: PM4 Explorer ( #1094 )
...
* Devtools: Pause system
* Devtools: pm4 viewer
- new menu bar
- refactored video_info layer
- dump & inspect pm4 packets
- removed dumpPM4 config
- renamed System to DebugState
- add docking space
- simple video info constrained to window size
* Devtools: pm4 viewer - add combo to select the queue
* Devtools: pm4 viewer - add hex editor
* Devtools: pm4 viewer - dump current cmd
* add monospaced font to devtools
* Devtools: pm4 viewer - use spec op name
avoid some allocations
2024-10-03 22:43:23 +02:00
Daniel R.
5e26294e27
video_core: disable warnings on vulkan
2024-10-03 16:57:33 +02:00
squidbus
e68774d449
shader_recompiler: Define fragment output type based on number format. ( #1097 )
...
* shader_recompiler: Define fragment output type based on number format.
* shader_recompiler: Fix GetAttribute SPIR-V output type.
* shader_recompiler: Don't bitcast on SetAttribute unless integer target.
2024-10-01 23:42:37 +03:00
squidbus
75adf7c8d1
vulkan: Fix some common validation errors. ( #1101 )
...
* vulkan: Fix some extension support related validation errors.
* vulkan: Fix validation error on zero-size buffer.
* vulkan: Fix primitive list restart validation error.
2024-10-01 23:42:20 +03:00
Vladislav Mikhalin
7d96c9d634
Use correct scissor rects ( #1146 )
...
* WIP
* Proper combination of scissors
* convert static functions to lambdas
2024-10-01 21:42:01 +03:00
squidbus
bf3e43b016
vulkan: Use dynamic vertex buffer strides when dynamic bindings unavailable. ( #1164 )
2024-10-01 09:54:06 +03:00
Daniel R.
80bf46da4c
core/memory: Pooled memory implementation ( #1085 )
2024-09-29 10:28:41 +03:00
squidbus
5e98a3e1d8
vulkan: Fix crash when resizing window. ( #1142 )
2024-09-29 08:25:44 +03:00
IndecisiveTurtle
ebebafed64
hotfix2: Actually fix errors
...
Ahhhh
2024-09-27 03:21:08 +03:00
IndecisiveTurtle
cf342e7a4b
hotfix: descriptor set lifetime fix
2024-09-27 02:56:50 +03:00
squidbus
50fc5e339d
liverpool_to_vk: Add MRT feature flags to supported number formats. ( #1087 )
2024-09-27 01:57:22 +03:00
Paris Oplopoios
eef0e6fc63
Fix build on GCC ( #1080 )
...
* Fix build on GCC
* Yes thank you clang-format
* Just remove static
2024-09-26 20:39:55 +03:00
Paris Oplopoios
6295d6c416
Use fs::path::native whenever possible, avoid unnecessary fs->string conversions in GUI code ( #1064 )
...
* Use filesystem::path whenever possible, remove fs::path::string
* My hatred for Windows grows with every passing day
* More Qt stuff
* custom u8string formatter for fmt library
* Use u8string for imgui
* Fix toml errors hopefully
* Fix not printing issue
* Oh and on SDL
* I hate Windows even more today
* fix toml reading utf-8 paths
also small fix for fmt::UTF
* Formatting
* Fix QT path to run games
* Fix path logging in save data
* Fix trophy path handling
* Update game_list_frame.cpp
fixed snd0path
* Update main_window.cpp
fix snd0path
* Update main_window.cpp
* paths finally fixed
* git info in WIP versions title
---------
Co-authored-by: Vinicius Rangel <me@viniciusrangel.dev>
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-09-26 11:41:59 +03:00
psucien
6a70d08043
hot-fix: missing clear-to-blit (WAW) image barrier
2024-09-25 23:07:38 +02:00
oltolm
5a4d5b9f31
use ComPtr in gui_context_menus.h ( #719 )
...
* use ComPtr in gui_context_menus.h
* fix pragma diagnostic
* fix compiler warnings
2024-09-25 18:39:04 +03:00
squidbus
11c155d0f1
amdgpu: Fix buffer comparison by naming padding fields for initialization. ( #1050 )
2024-09-25 14:08:10 +03:00
squidbus
f657ab3cc6
vulkan: Only reduce viewport minDepth if using depth clip control. ( #969 )
2024-09-25 12:43:54 +03:00
Lander Gallastegi
a984d44fd3
Swapchain recreation and window resizing ( #933 )
...
* Always present acquired swapchain images
Always present acquired swapchain images in order to be able to acquire them again.
fix #865
* Recreate swapchain if window is resized
* Respect aspect ratio when blitting to frame
* Make SDL window resizable
* clang-format
* designator order (building with gcc)
Fix /shadPS4/src/video_core/renderer_vulkan/vk_instance.cpp:314:9: error: designator order for field ‘vk::PhysicalDeviceVulkan12Features::samplerMirrorClampToEdge’ does not match declaration order in ‘vk::PhysicalDeviceVulkan12Features’
* Clear frame before blitting
* clang-format
* Revert "designator order (building with gcc)"
There already is a PR opened for this.
This reverts commit 7f8ccf4b1e .
2024-09-25 12:43:08 +03:00
squidbus
b2de662d67
vulkan: Enable VULKAN_HPP_NO_EXCEPTIONS broadly. ( #995 )
...
* vulkan: Enable VULKAN_HPP_NO_EXCEPTIONS broadly.
* vulkan: Use structured bindings for result where possible.
2024-09-25 12:19:38 +03:00
squidbus
36ef61908d
renderer_vulkan: Refactor surface and depth format mapping. ( #1067 )
...
* renderer_vulkan: Refactor surface and depth format mapping.
* image: Convert usage to feature flags for format support checks.
2024-09-25 12:10:44 +03:00
Paris Oplopoios
6da67645e9
Fixup designator order ( #1039 )
2024-09-24 17:18:35 +03:00
Paris Oplopoios
5799091044
Patch extrq ( #943 )
...
* Use a singleton for instruction decoding
* Use singleton class
* Patch `EXTRQ`
* Fixup signal context functions
* Update CMakeLists.txt
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-09-23 19:19:52 +03:00
TheTurtle
cd7268a70e
video_core: Separate dirty flags and better gpu invalidation ( #1034 )
2024-09-23 18:03:42 +03:00
TheTurtle
ee38eec7fe
shader_recompiler: Additional scope handling and user data as push constants ( #1013 )
...
* shader_recompiler: Use push constants for user data regs
* shader: Add some GR2 instructions
* shader: Add some instructions
* shader: Add instructions for knack
* touchups
* spirv: Better names
* buffer_cache: Ignore non gpu modified images
* clang format
* Add log
* more fixes
2024-09-23 08:55:43 +02:00
squidbus
bfe2e1e57c
vulkan: Use closest available equivalent to missing clamp modes. ( #1007 )
2024-09-22 15:07:05 +03:00
psucien
5f4ddc14fc
Image subresources barriers ( #904 )
...
* video_core: texture: image subresources state tracking
* shader_recompiler: use one binding if the same image is read and written
* video_core: added rebinding of changed textures after overlap resolve
* don't use pointers; slight `FindTexture` refactoring
* video_core: buffer_cache: don't copy over the image size
* redundant barriers removed; fixes
* regression fixes
* texture_cache: 3d texture layers count fixup
* shader_recompiler: support for partially bound cubemaps
* added support for cubemap arrays
* don't bind unused color buffers
* fixed depth promotion to do not use stencil
* doors
* bonfire lit
* cubemap array index calculation
* final touches
2024-09-21 21:45:56 +02:00
squidbus
4fe81231f6
vulkan: Add alternatives when nullDescriptor is not supported. ( #1001 )
...
* vulkan: Add alternatives when nullDescriptor is not supported.
* vulkan: Set identifying name on null image/image view/buffer
2024-09-21 03:50:57 +03:00
squidbus
eaa92b5a65
vulkan: Upgrade format queries to use format feature flags 2. ( #941 )
2024-09-21 00:05:16 +03:00
Vinicius Rangel
0f4bcd8c83
Rewrite Save Data & Impl Save Data Dialog ( #824 )
...
* core: Rewrite PSF parser & add encoder
add .sfo hex pattern to /scripts
* core/fs: allow to mount path as read-only
* common: Add CString wrapper to handle native null-terminated strings
* SaveData: rewrite to implement full functionality
* mock value for SYSTEM_VER
* SavaData: backup features
* SavaData: SaveDataMemory features
* imgui Ref-counted textures
- has a background thread to decode textures
* imgui: rework gamepad navigation
* PSF: fixed psf not using enum class for PSFEntryFmt (was a standard old ugly enum)
- Add null check to CString when itself is used in a nullable field
* SaveDataDialog implementation
- Fix Mounting/Unmounting check of SaveInstance
2024-09-20 12:34:19 +03:00
korenkonder
60f315a54d
video_core: stride fix ( #986 )
...
I don't know why it was forced to be 1 while in reality it should be as is
2024-09-19 21:43:03 +02:00
Daniel R.
dcf245b814
shader_recompiler: Implement basic 64-bit floating point support ( #915 )
...
* shader_recompiler: Implement basic 64-bit floating point support
* Fix formatting
2024-09-15 22:53:08 +02:00
squidbus
75a4df53a5
cpu_patches: Patch just-in-time using signal handlers. ( #852 )
...
* cpu_patches: Patch just-in-time using illegal instruction handler.
* core: Add common signal dispatch system and use for on-demand TCB patches.
* page_manager: Re-add userfaultfd implementation.
2024-09-15 23:48:34 +03:00
TheTurtle
b09b28c7f3
graphics_pipeline: Move some depth configuration to dynamic state ( #931 )
...
* graphics_pipeline: More proper masking
* pipeline_cache: Skip setting depth/stencil fields when test is disabled
* pipeline_cache: More fixes to depth stencil state
* vk_rasterizer: Use dynamic state for depth bounds and bias
* pipeline_cache: Missed depth bias enable
* vk_rasterizer: Add stencil dynamic states
* thread: Reduce spammy log
* Remove some leftover state
* pipeline_cache: Allocate pipelines from pools
* vk_graphics_pipeline: Remove bindings member
Saves about 1KB from each pipeline
2024-09-15 22:42:14 +02:00
Raven
1879c9d12f
Add PM4 opcodes
2024-09-15 01:46:39 +08:00
squidbus
e30255e0d2
vulkan: Disable exceptions for getImageFormatProperties and account for errors. ( #906 )
2024-09-14 17:12:08 +03:00
squidbus
fc90f279e2
vulkan: Limit multisampling to supported sample counts. ( #828 )
2024-09-12 22:59:23 +03:00
baggins183
bc66fe8fb5
Fix copyGpuBuffers when resize invalidates commands in flight ( #876 )
...
* Fix copyGpuBuffers when resize invalidates commands in flight
* Use _MB macro for size constant
2024-09-12 21:54:54 +02:00
psucien
8a76cd888f
hot-fix: mark null image as tracked by default to avoid its updates
2024-09-11 22:39:21 +02:00
Pipi86
1c0dfc60a1
Typo fix ( #820 )
...
* Update pm4_cmds.h
* Update pm4_cmds.h
2024-09-11 13:40:19 +03:00
squidbus
c27d79c2e7
vulkan: Skip draw when primitive type is None. ( #867 )
2024-09-11 08:58:20 +03:00
TheTurtle
b0bbb16aae
video_core: Add fallback path for pipelines with more than 32 bindings ( #837 )
...
* video_core: Small fixes
* renderer_vulkan: Add fallback path for pipelines with more than 32 bindings
* vk_resource_pool: Rewrite desc heap
* work
2024-09-10 20:54:39 +03:00
georgemoralis
3a65052b8e
Merge pull request #851 from shadps4-emu/stabilization/barriers
...
Various barrier fixes
2024-09-10 06:45:15 +03:00
squidbus
411449cd51
Initial support for compiling on ARM64. ( #788 )
2024-09-09 13:23:16 +03:00
psucien
adfb3af95f
hot-fix: nullGpu functionality restored
2024-09-09 08:59:47 +02:00
psucien
1da1946ef5
presentation barriers fixed
2024-09-09 00:10:33 +02:00
psucien
56cc70dc97
fix for image view storage flag handling
2024-09-09 00:09:38 +02:00
Vinicius Rangel
035cb3eeaa
Dear ImGui Implementation ( #598 )
...
* added imgui as dependency
* imgui renderer/basic input implementation
* imgui: add layers system
Add video info layer to show fps. Press F10 to toggle it.
* imgui: add custom imgui config
* imgui: gamepad capture, stopping propagation
* imgui: changed config & log file path to use portable dir
* videoout: render blank frame when video output is closed
required to render imgui even when game has no video output
- fixed merge compile-error
2024-09-08 22:50:32 +03:00
psucien
f1becb2507
hot-fix: linear cubemaps check assert removed (verified)
2024-09-08 14:18:48 +02:00
psucien
047a115b3e
hot-fix: exclude tiling condition from promotion of textures to depth
2024-09-08 11:12:25 +02:00
Blargle
749fe92882
Small fix for EmitQuadToTriangleListIndices ( #831 )
2024-09-07 15:52:48 +03:00
TheTurtle
13743b27fc
shader_recompiler: Implement data share append and consume operations ( #814 )
...
* shader_recompiler: Add more format swap modes
* texture_cache: Handle stencil texture reads
* emulator: Support loading font library
* readme: Add thanks section
* shader_recompiler: Constant buffers as integers
* shader_recompiler: Typed buffers as integers
* shader_recompiler: Separate thread bit scalars
* We can assume guest shader never mixes them with normal sgprs. This helps avoid errors where ssa could view an sgpr write dominating a thread bit read, due to how control flow is structurized, even though its not possible in actual control flow
* shader_recompiler: Implement data append/consume operations
* clang format
* buffer_cache: Simplify invalidation scheme
* video_core: Remove some invalidation remnants
* adjust
2024-09-07 00:14:51 +03:00