Commit Graph

9891 Commits

Author SHA1 Message Date
60d815fada Remove LGTM config (#7020) 2023-09-29 03:20:45 +02:00
38f310f716 externals: allow users to use system cpp-jwt libraries (#6976) 2023-09-28 16:31:14 -07:00
a35f8cbb78 fix include/namespace related compilation errors (#7019)
a user on discord reported compilation errors when trying to compile
on Linux with GCC 13 and Clang 16.
2023-09-28 18:36:50 +05:30
6cfb8e02a8 clang format (#7017) 2023-09-27 13:42:19 -03:00
5ced2c7af9 Bump clang format to 15 (#7014) 2023-09-27 19:29:49 +05:30
327a00b4d5 externals: Update fmt. (#7015) 2023-09-27 03:29:13 -07:00
d0b8974845 build: Disable LTO when using MSVC. (#7003) 2023-09-24 00:00:16 +02:00
d19fe9aa4c audio_core\hle\shared_memory.h: Update struct member names based on FE:Fates Symbols (#6995) 2023-09-22 11:53:30 -07:00
270d3eb7eb ci: Split out non-release CI jobs into separate workflows. (#7001) 2023-09-22 09:15:47 -07:00
003a4ec09b gsp: Downgrade StoreDataCache log to trace. (#7006)
* gsp: Downgrade StoreDataCache log to trace.

* gsp: Mark StoreDataCache parameters as maybe_unused
2023-09-22 09:15:31 -07:00
279208347e AndroidManifest.xml: allow launchers to start a game using the EmulationActivity intent (#6996) 2023-09-19 19:36:16 +02:00
af5202f6cb ci: Add iOS verification workflow. (#6992) 2023-09-18 20:12:28 -07:00
28c542c2c2 build: Fix compiling citra-qt for iOS. (#6983)
* build: Fix compiling citra-qt for iOS.

* Update src/citra_qt/configuration/configure_general.cpp

Co-authored-by: Tobias <thm.frey@gmail.com>

---------

Co-authored-by: Tobias <thm.frey@gmail.com>
2023-09-17 16:07:56 -07:00
d1c16bad78 code: Remove save state compatibility checks (#6980) 2023-09-16 15:22:10 -07:00
542209c993 video_core: Initialize unrefered attributes to 1.f (#6966) 2023-09-16 14:46:44 -07:00
8aee625a14 externals: Add option to use system SoundTouch (#6971) 2023-09-16 14:46:32 -07:00
d2d37411bc vk_platform: Check if vkEnumerateInstanceVersion exists before calling it (#6982)
Co-authored-by: Vitor K <vitor-kiguchi@hotmail.com>
2023-09-15 16:00:10 -07:00
43cedf59af automap: fix power button mapping (#6972) 2023-09-14 14:41:55 -07:00
30fcdc5474 renderer_vulkan: Misc fixes (#6974)
* vk_platform: Check if library was loaded

* pica_to_vk: Dont crash on unknow blend equation
2023-09-15 00:21:12 +03:00
ee3eab5054 ci: Re-enable macOS artifact upload. (#6646) 2023-09-12 15:33:23 -07:00
dfa2fd0e0d Add vulkan backend (#6512)
* code: Prepare frontend for vulkan support

* citra_qt: Add vulkan options to the GUI

* vk_instance: Collect tooling info

* renderer_vulkan: Add vulkan backend

* 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.

* 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.

* vk_renderpass_cache: Bump pixel format count

* android: Custom driver code

* vk_instance: Set moltenvk configuration

* rasterizer_cache: Proper surface unregister

* citra_qt: Fix invalid characters

* vk_rasterizer: Correct special unbind

* android: Allow async presentation toggle

* vk_graphics_pipeline: Fix async shader compilation

* We were actually waiting for the pipelines regardless of the setting, oops

* vk_rasterizer: More robust attribute loading

* android: Move PollEvents to OpenGL window

* Vulkan does not need this and it causes problems

* vk_instance: Enable robust buffer access

* Improves stability on mali devices

* vk_renderpass_cache: Bring back renderpass flushing

* externals: Update vulkan-headers

* gl_rasterizer: Separable shaders for everyone

* vk_blit_helper: Corect depth to color convertion

* renderer_vulkan: Implement reinterpretation with copy

* Allows reinterpreteration with simply copy on AMD

* vk_graphics_pipeline: Only fast compile if no shaders are pending

* With this shaders weren't being compiled in parallel

* vk_swapchain: Ensure vsync doesn't lock framerate

* 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

* vk_instance: Blacklist VK_EXT_pipeline_creation_cache_control with nvidia gpus

* Resolves crashes when async shader compilation is enabled

* vk_rasterizer: Bump async threshold to 6

* Many games have fullscreen quads with 6 vertices. Fixes pokemon textures missing with async shaders

* android: More robust surface recreation

* renderer_vulkan: Fix dynamic state being lost

* vk_pipeline_cache: Skip cache save when no pipeline cache exists

* This is the cache when loading a save state

* sdl: Fix surface initialization on macOS. (#49)

* sdl: Fix surface initialization on macOS.

* sdl: Fix render window events not being handled under Vulkan.

* renderer/vulkan: Fix binding/unbinding of shadow rendering buffer.

* vk_stream_buffer: Respect non coherent access alignment

* Required by nvidia GPUs on MacOS

* renderer/vulkan: Support VK_EXT_fragment_shader_interlock for shadow rendering. (#51)

* renderer_vulkan: Port some recent shader fixes

* vk_pipeline_cache: Improve shadow detection

* vk_swapchain: Add missing check

* renderer_vulkan: Fix hybrid screen

* Revert "gl_rasterizer: Separable shaders for everyone"

Causes crashes on mali GPUs, will need separate PR

This reverts commit d22d556d30.

* renderer_vulkan: Fix flipped screenshot

---------

Co-authored-by: Steveice10 <1269164+Steveice10@users.noreply.github.com>
2023-09-13 01:28:50 +03:00
8f8c54201d citra_qt/config: Fix Telemetry checkbox (#6965) 2023-09-11 23:07:06 +02:00
9be4fd8b91 gl_rasterizer: Bind null surface when unit is disabled (#6967) 2023-09-11 19:34:41 +03:00
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
0b0d3a4ac3 gpu: Correct display transfer output with vertical flip+crop lines (#6952) 2023-09-11 00:30:06 +03:00
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
3e254d01ee Add Kdevelop files to .gitignore (#6951) 2023-09-07 11:52:40 -07:00
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
e2d8eef5fa qt: Fix arguments to maintenancetool for update check. (#6946) 2023-09-04 17:25:41 -07:00
9e898bca06 build: Fix Qt installer build script. (#6938) 2023-09-01 15:18:47 -07:00
cab0ad50f0 gl_shader_decompiler: Fix min/max NaN edge case (#6935) 2023-08-31 13:37:53 -07:00
5ad58e0605 shader: Fix shadow_texture_orthographic not being set correctly. (#6937) 2023-08-31 13:37:39 -07:00
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
93c7c6a995 service: Downgrade some spammy logs to trace level. (#6936) 2023-08-30 19:19:38 +02:00
81a5e2355a shader: Fix address register offset behavior in GLSL. (#6920) 2023-08-28 13:23:59 -07:00
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
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
8b218e1b7d tev: Use primary color for previous source in first stage (#6921) 2023-08-27 23:59:32 -07:00
04aeecabcf arm: Do not try to access null page table. (#6930) 2023-08-27 17:26:31 +02:00
df57012c50 video_core: Correct shader interpeter address register handling. (#6910) 2023-08-27 01:49:31 +03:00
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
f2e0748a22 build: Enable link time optimization in release builds. (#6887) 2023-08-26 11:15:13 -07:00
edf157200d qt: Support updating an installed app image. (#6915) 2023-08-24 03:57:11 -07:00
a94297922b shader_interpreter: Fix control flow edge cases and implement break/breakc (#6844) 2023-08-21 18:12:46 -07:00
894c1c85a5 Include Citra Icon in release (#6905) 2023-08-21 22:34:54 +02:00
e129f07047 [ShaderGen] Avoid setting lighting states if components aren't enabled (#6895)
* [ShaderGen] Avoid setting lighting states if components aren't enabled

* [Squash] clang-format
2023-08-20 21:12:38 -07:00
cf54210f42 ci: Remove compatibility artifact naming for releases. (#6647) 2023-08-20 16:41:13 -07:00
b2092de871 build: Fix web service functionality. (#6903) 2023-08-19 17:34:35 -07:00
6ddf4b241f renderer/vulkan: Emulate custom border colors in shaders when unavailable. (#6878) 2023-08-17 22:22:25 +02:00
f3d92dd3b8 Fix post processing shaders crashing on Intel GPUs (#6890) 2023-08-17 22:17:24 +02:00