Commit Graph

9799 Commits

Author SHA1 Message Date
Steveice10
37f5d66c10 sdl: Fix surface initialization on macOS. (#49)
* sdl: Fix surface initialization on macOS.

* sdl: Fix render window events not being handled under Vulkan.
2023-09-11 00:38:01 +03:00
GPUCode
6bfe1daac7 vk_pipeline_cache: Skip cache save when no pipeline cache exists
* This is the cache when loading a save state
2023-09-11 00:38:01 +03:00
GPUCode
bcbce50120 renderer_vulkan: Fix dynamic state being lost 2023-09-11 00:38:01 +03:00
GPUCode
a608e33593 android: More robust surface recreation 2023-09-11 00:38:01 +03:00
GPUCode
ff10decc2c vk_rasterizer: Bump async threshold to 6
* Many games have fullscreen quads with 6 vertices. Fixes pokemon textures missing with async shaders
2023-09-11 00:38:01 +03:00
GPUCode
78050813c4 vk_instance: Blacklist VK_EXT_pipeline_creation_cache_control with nvidia gpus
* Resolves crashes when async shader compilation is enabled
2023-09-11 00:38:01 +03:00
GPUCode
b758dd214a vk_present_window: Match guest swapchain size to vulkan image count
* Less latency and fixes crashes that were caused by images being deleted before free
2023-09-11 00:38:01 +03:00
GPUCode
8267da3874 vk_swapchain: Ensure vsync doesn't lock framerate 2023-09-11 00:38:01 +03:00
GPUCode
9e7ae03b6c vk_graphics_pipeline: Only fast compile if no shaders are pending
* With this shaders weren't being compiled in parallel
2023-09-11 00:38:01 +03:00
GPUCode
631c777983 renderer_vulkan: Implement reinterpretation with copy
* Allows reinterpreteration with simply copy on AMD
2023-09-11 00:38:01 +03:00
GPUCode
622c20761c vk_blit_helper: Corect depth to color convertion 2023-09-11 00:38:01 +03:00
GPUCode
d22d556d30 gl_rasterizer: Separable shaders for everyone 2023-09-11 00:38:01 +03:00
GPUCode
c281c1a5cc externals: Update vulkan-headers 2023-09-11 00:38:01 +03:00
GPUCode
fd38e33fb2 vk_renderpass_cache: Bring back renderpass flushing 2023-09-11 00:38:01 +03:00
GPUCode
66c5f59627 vk_instance: Enable robust buffer access
* Improves stability on mali devices
2023-09-11 00:38:01 +03:00
GPUCode
faf6b36f3b android: Move PollEvents to OpenGL window
* Vulkan does not need this and it causes problems
2023-09-11 00:38:01 +03:00
GPUCode
dd71859818 vk_rasterizer: More robust attribute loading 2023-09-11 00:38:01 +03:00
GPUCode
fe724600ab vk_graphics_pipeline: Fix async shader compilation
* We were actually waiting for the pipelines regardless of the setting, oops
2023-09-11 00:38:01 +03:00
GPUCode
a12b01105d android: Allow async presentation toggle 2023-09-11 00:38:01 +03:00
GPUCode
8c05a52a65 vk_rasterizer: Correct special unbind 2023-09-11 00:38:00 +03:00
GPUCode
e5ba2abd1c citra_qt: Fix invalid characters 2023-09-11 00:38:00 +03:00
GPUCode
8421be7ebf rasterizer_cache: Proper surface unregister 2023-09-11 00:38:00 +03:00
GPUCode
ba9f1f8ae9 vk_instance: Set moltenvk configuration 2023-09-11 00:38:00 +03:00
GPUCode
6c391971c6 android: Custom driver code 2023-09-11 00:38:00 +03:00
GPUCode
85dd604a7e vk_renderpass_cache: Bump pixel format count 2023-09-11 00:38:00 +03:00
Steveice10
edd8de29ae renderer/vulkan: Make gl_Position invariant. (#48)
This fixes an issue with black artifacts in Pokemon games on Apple GPUs.
If the vertex calculations differ slightly between render passes, it can
cause parts of model faces to fail depth test.
2023-09-11 00:38:00 +03:00
Steveice10
89226eea2a qt: Fix fullscreen and resize issues on macOS. (#47)
* qt: Fix bugged macOS full screen transition.

* renderer/vulkan: Fix swapchain recreation destroying in-use semaphore.
2023-09-11 00:38:00 +03:00
GPUCode
59549a2eb6 renderer_vulkan: Add vulkan backend 2023-09-11 00:38:00 +03:00
GPUCode
a8d590ae80 vk_instance: Collect tooling info 2023-09-11 00:38:00 +03:00
GPUCode
6b51afaf1f citra_qt: Add vulkan options to the GUI 2023-09-11 00:38:00 +03:00
GPUCode
a67bfe544d code: Prepare frontend for vulkan support 2023-09-11 00:37:53 +03:00
Vitor K
bbb47cd753 gles: fix crashing on mali gpus (#6956)
* gles: reorder framebuffer fetch extension directives

* Address review comments
2023-09-11 00:30:30 +03:00
GPUCode
0b0d3a4ac3 gpu: Correct display transfer output with vertical flip+crop lines (#6952) 2023-09-11 00:30:06 +03:00
GPUCode
6aa31d6ec2 video_core: Use epsilons for clip planes (#6945)
* video_core: Use epsilons for clip planes

* video_core: Add comments
2023-09-11 00:29:55 +03:00
Castor215
3e254d01ee Add Kdevelop files to .gitignore (#6951) 2023-09-07 11:52:40 -07:00
GPUCode
928f352c94 renderer_gl: Use explicit bindings (#6940)
* renderer_gl: Use explicit bindings

* gl_state: Match shadow order with vulkan
2023-09-07 21:42:22 +03:00
Steveice10
e2d8eef5fa qt: Fix arguments to maintenancetool for update check. (#6946) 2023-09-04 17:25:41 -07:00
Steveice10
9e898bca06 build: Fix Qt installer build script. (#6938) 2023-09-01 15:18:47 -07:00
GPUCode
cab0ad50f0 gl_shader_decompiler: Fix min/max NaN edge case (#6935) 2023-08-31 13:37:53 -07:00
Steveice10
5ad58e0605 shader: Fix shadow_texture_orthographic not being set correctly. (#6937) 2023-08-31 13:37:39 -07:00
GPUCode
1159e4d928 video_core: Take factors into account with min/max blending functions (#6925)
* sw_framebuffer: Take factors into account for min/max blending

* renderer_gl: Take factors into account for min/max blending

* Address review comments

* gl_shader_gen: Fix frambuffer fetch on qcom and mali

* renderer_opengl: Add fallback path for mesa

* gl_shader_gen: Avoid emitting blend emulation if minmax_factor is present
2023-08-30 21:26:28 +03:00
Steveice10
93c7c6a995 service: Downgrade some spammy logs to trace level. (#6936) 2023-08-30 19:19:38 +02:00
Steveice10
81a5e2355a shader: Fix address register offset behavior in GLSL. (#6920) 2023-08-28 13:23:59 -07:00
Tobias
d2260bafef fix: Added padding to reset defaults button (#6926)
The button did not have enough padding, now it does!

Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
Co-authored-by: Benjamin <73490201+benjaminhalko@users.noreply.github.com>
2023-08-28 12:17:59 -07:00
GPUCode
d1f600601d renderer_software: Multi-thread processing (#6698)
* renderer_software: Multi-thread processing

* Doubles the performance in most cases

* renderer_software: Move memory access out of the raster loop

* Profiling shows this has a significant impact
2023-08-28 01:09:23 -07:00
GPUCode
8b218e1b7d tev: Use primary color for previous source in first stage (#6921) 2023-08-27 23:59:32 -07:00
Steveice10
04aeecabcf arm: Do not try to access null page table. (#6930) 2023-08-27 17:26:31 +02:00
Steveice10
df57012c50 video_core: Correct shader interpeter address register handling. (#6910) 2023-08-27 01:49:31 +03:00
GPUCode
61cf550d0c video_core: Avoid setting alpha tev with Dot3_RGBA8 color op (#6907)
* Further reduces unnecessary shader regenerations
2023-08-27 01:48:45 +03:00
Steveice10
f2e0748a22 build: Enable link time optimization in release builds. (#6887) 2023-08-26 11:15:13 -07:00