GPUCode
12e69913c2
renderer_vulkan: Rework attribute format handling
...
* Centralize format support query to the instance similar to pixel formats
In addition drop the component splitting. Favour scaled formats which don't require
any shader casting to work and fallback to uint if necessary. Using scaled formats
also has the benefit of reducing vertex shader permutations.
2023-01-25 00:25:08 +02:00
GPUCode
89217f8c4b
vk_shader_gen_spv: Fix scissor test
2023-01-24 22:17:05 +02:00
GPUCode
247b6900c7
vk_swapchain: Fix incorrect image_count
...
* Sometimes the swapchain won't create as many images as requested. Adjust image_count for fix that
2023-01-23 23:30:06 +02:00
GPUCode
1e42a40640
vk_shader_gen: Remove defines
...
* Causes shader compiler errors
2023-01-22 23:29:54 +02:00
GPUCode
7eab7b4151
android: Expose async shaders in the GUI
2023-01-22 10:33:19 +02:00
GPUCode
e9ccd51286
renderer_vulkan: Trim down used features
2023-01-22 10:33:19 +02:00
GPUCode
9f385ddeb7
vk_instance: Only check the portability extension on apple platforms
2023-01-22 10:33:19 +02:00
GPUCode
ab73566acc
renderer_vulkan: Add suport for VK_EXT_debug_report
...
* Used in older android devices
2023-01-22 10:33:19 +02:00
GPUCode
1e3971038f
vk_swapchain: Create semaphores at swapchain creation time
...
* Sometimes minImageCount is higher than 3 and that caused crashes
2023-01-22 10:33:19 +02:00
GPUCode
306943532c
renderer_vulkan: Preliminary screenshot support
...
* It's broken for now but at least it doesn't crash
2023-01-22 10:33:19 +02:00
GPUCode
27698b0c93
vk_instance: Manually enable features
...
* We need these features so better force enable them and have the driver crash if they're unavailable.
2023-01-22 10:33:18 +02:00
GPUCode
d6cab3ab40
renderer_vulkan: Flush scheduler on renderpass end
...
* Follows the Mali guide recommendation and fixes performance regression introduced by async shaders commit
2023-01-22 10:33:18 +02:00
GPUCode
cbd9a6ffe3
vk_swapchain: Prefer scheduler finish
...
* The scheduler might have recorded a present that uses the to-be-destroyed semaphores. vkWaitIdle might miss this
2023-01-22 10:33:18 +02:00
GPUCode
4752818920
renderer_vulkan: Async shaders
2023-01-22 10:33:18 +02:00
Steveice10
131129062b
ci: Fix macOS script permissions. ( #24 )
2023-01-17 20:47:40 +02:00
GPUCode
fad1ee7140
Merge branch 'master' into vulkan-2
2023-01-17 18:39:04 +02:00
Steveice10
b9ca7bef3f
rasterizer_cache: Handle texture swizzle case with unaligned offsets in same tile. ( #23 )
2023-01-17 13:42:47 +02:00
Steveice10
0e0771ad74
Merge from latest upstream ( #22 )
...
* externals: bump xbyak to v6.68
* externals: point to upstream dynarmic
* build: Update to support multi-arch builds.
* ci: Generate universal macOS build.
* macOS: Make Citra show up in the Launchpad Games folder (#6245 )
* Instead of there being an "Abort/Continue" prompt when a savestate fails to save or load, it just brings up a warning box. (#6236 )
* This fixes #6041 by changing OnCoreError. Instead of there being an "Abort/Continue" prompt when a savestate fails to save or load, it just brings up a warning box.
I also changed "Abort/Continue" to "Quit Game/Continue" for better clarity
* Fixed formatting
* externals: Switch to newer cryptopp-cmake. (#6242 )
* Implement svcGetHandleInfo, svcOpenProcess/Thread, svcGetProcessList (#6243 )
* Implement svcGetHandleInfo, svcOpenProcess/Thread, svcGetProcessList
* Apply suggestions
* Add comment to stubbed enum values in svcGetHandleInfo
* Revert u32 -> size_t
Co-authored-by: SachinVin <sachinvinayak2000@gmail.com >
Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com >
Co-authored-by: UltraHDR <108294295+UltraHDR@users.noreply.github.com >
Co-authored-by: upadsamay387 <56898833+upadsamay387@users.noreply.github.com >
Co-authored-by: PabloMK7 <hackyglitch2@gmail.com >
2023-01-17 13:11:41 +02:00
PabloMK7
9c6035f254
Implement svcGetHandleInfo, svcOpenProcess/Thread, svcGetProcessList ( #6243 )
...
* Implement svcGetHandleInfo, svcOpenProcess/Thread, svcGetProcessList
* Apply suggestions
* Add comment to stubbed enum values in svcGetHandleInfo
* Revert u32 -> size_t
2023-01-15 21:50:54 +05:30
Steveice10
a298e4969b
externals: Switch to newer cryptopp-cmake. ( #6242 )
2023-01-15 21:45:42 +05:30
upadsamay387
bd1cabce86
Instead of there being an "Abort/Continue" prompt when a savestate fails to save or load, it just brings up a warning box. ( #6236 )
...
* This fixes #6041 by changing OnCoreError. Instead of there being an "Abort/Continue" prompt when a savestate fails to save or load, it just brings up a warning box.
I also changed "Abort/Continue" to "Quit Game/Continue" for better clarity
* Fixed formatting
2023-01-15 21:45:16 +05:30
Steveice10
489248e77f
video_core: De-duplicate texture format conversion logic. ( #21 )
...
* video_core: De-duplicate texture format conversion logic.
* video_core: Replace std::byte with u8 and remove excess linear texture converters.
* video_core: Remove implicit RGBA conversions from convert table for now, add comments explaining omissions.
2023-01-13 13:54:42 +02:00
Steveice10
f593268476
rasterizer_cache: Add converted swizzle mapping for D24 and log error for missing (un)swizzle functions. ( #20 )
2023-01-13 00:51:31 +02:00
Steveice10
8fcc3d2121
rasterizer_cache: Add morton conversion for D24 <-> D32 ( #19 )
2023-01-12 13:33:12 +02:00
Steveice10
a3a8964d46
renderer_vulkan: Centralize pixel format trait management. ( #18 )
...
* renderer_vulkan: Centralize pixel format trait management.
* renderer_vulkan: Add D24 <-> D32 conversion support.
2023-01-12 10:43:40 +02:00
GPUCode
c8d614139c
vk_shader_gen_spv: Implement scissor testing
...
* Fixes weird looking map in LBW
2023-01-11 22:20:53 +02:00
GPUCode
25fe723fa6
renderer_vulkan: Support self copy
...
FE games copy parts of the framebuffer to itself. Don't switch layout in that case
2023-01-11 20:48:20 +02:00
GPUCode
2335b47f4b
code: Run clang format
2023-01-11 20:48:20 +02:00
Vitor Kiguchi
10a7b60b12
ci: Fix android builds
2023-01-11 20:48:20 +02:00
GPUCode
98ab3c9610
common: Log more vulkan settings
2023-01-11 20:48:20 +02:00
GPUCode
0ca25b64e1
renderer_vulkan: Improve storage reinterpretation barriers
2023-01-11 20:48:20 +02:00
GPUCode
694e49b857
renderer_vulkan: Remove master semaphore fence
...
* Wasn't used anywhere
2023-01-11 20:48:20 +02:00
Steveice10
381db8452b
renderer_vulkan: Gate reduced shadow binding count to Android only. ( #17 )
2023-01-11 15:03:11 +02:00
Steveice10
e2076f2385
shader: Handle out-of-bounds uniform access via address register. ( #16 )
2023-01-10 13:23:39 +02:00
UltraHDR
ad2cbe2b26
macOS: Make Citra show up in the Launchpad Games folder ( #6245 )
2023-01-10 01:27:11 +01:00
Steveice10
9c206db630
video_core: Move some common state management out of specific render backends. ( #15 )
2023-01-09 19:28:18 +02:00
GPUCode
447f29285f
renderer_vulkan: Add fence implementation of MasterSemaphore
2023-01-08 15:04:28 +02:00
GPUCode
26a9002d97
vk_swapchain: Lower image count to 3
2023-01-08 13:57:00 +02:00
GPUCode
a12748d79e
vk_shader_gen_spv: Emulate logic ops
2023-01-08 13:02:23 +02:00
GPUCode
5abfdff66a
android: Query window size from surface
2023-01-08 00:55:41 +02:00
GPUCode
8a315d0c8f
vk_rasterizer: Initialize uniform buffers
...
* Pokemon Y crashes without this
2023-01-07 23:51:33 +02:00
GPUCode
4ee36e05b6
renderer_vulkan: Proper barriers on renderpass clear
2023-01-07 23:12:56 +02:00
SachinVin
e60a816d89
Merge pull request #6240 from Steveice10/universal
...
ci: Generate universal macOS build.
2023-01-07 19:39:22 +05:30
Steveice10
5d0e60a6aa
ci: Generate universal macOS build.
2023-01-07 01:09:36 -08:00
Steveice10
a8848cce43
build: Update to support multi-arch builds.
2023-01-07 01:09:32 -08:00
GPUCode
11061f36e6
renderer_vulkan: Surface recreation works
2023-01-06 21:15:52 +02:00
GPUCode
6d286d5f8c
vk_instance: Avoid enabling debug messenger when unsupported
2023-01-06 20:29:54 +02:00
SachinVin
0e325255f3
externals: point to upstream dynarmic
2023-01-06 06:41:51 -08:00
SachinVin
21fe65c29c
externals: bump xbyak to v6.68
2023-01-06 06:41:51 -08:00
GPUCode
4619ed086c
android: Add new graphics API options to GUI
2023-01-06 14:39:50 +02:00