Commit Graph

9597 Commits

Author SHA1 Message Date
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
GPUCode
3843122cf8 video_core: Update usage of tex_lod_bias 2023-01-06 09:37:11 +02:00
Vitor K
d320eef663 Fix opengl and auto resolution crashes (#14)
* video_core: fix UniformData size on opengl

* video_core: check for renderer on auto resolution

The rasterizer cache constructor will call GetResolutionScaleFactor
before the renderer is initialized on the vulkan backend, so
check for that case and return 1 as a placeholder scale factor.
2023-01-06 09:05:21 +02:00
GPUCode
a7a9b94a30 common: Update thread library from yuzu 2023-01-05 17:34:47 +02:00