Wunkolo
200a4632e5
renderer_gl: Implement multisample Convert{DS24S8ToRGBA8,RGBA4ToRGB5A1}
2026-05-26 07:21:26 -07:00
Wunkolo
58d71a95c7
renderer_gl: Fix surface ScaleUp implementation
...
Should assign the new `res_scale` and `sample_count`
2026-05-26 07:21:26 -07:00
Wunkolo
3dc0f9a334
renderer_gl: Initial MSAA implementation
...
Basically copied over some of the paradigms over from Vulkan. Covers most rendering uses-cases except for conversions such as `ConvertDS24S8ToRGBA8` and `ConvertRGBA4ToRGB5A1`
2026-05-26 07:21:26 -07:00
Wunkolo
41e4ab7b6a
config: Refactor sample_count to antialiasing setting
...
Intended to allow for other anti-aliasing methods to be introduced
2026-05-26 07:21:26 -07:00
Wunkolo
2498c90379
renderer_vulkan: Fix Multisample ConvertDS24S8ToRGBA8
...
Migrate `ResolveTexture` to `BlitHelper`.
If the conversion was multi-sample, do a final resolve at the end of the conversion to ensure the non-multisample textures are updated as well.
Fixes Pokemon!
2026-05-26 07:21:26 -07:00
Wunkolo
f16dee1021
renderer_vulkan: Fix MSAA image debug name
2026-05-26 07:21:26 -07:00
Wunkolo
5235c4accc
renderer_vulkan: Fix multisample framebuffer creation
...
MSAA renderpasses require the "current" image as the main resolve target, and the MSAA image as the second attachment.
2026-05-26 07:21:26 -07:00
Wunkolo
e8f37c4c6e
renderer_vulkan: Fix multisample ClearTextureWithRenderpass
...
Ensure that the multisample framebuffer is used rather than the usual one when using a render pass to clear the textures.
That way, a MSAA-render AND resolve is used to clear the textures at the same time.
2026-05-26 07:21:26 -07:00
Wunkolo
e4690bd762
renderer_vulkan: Fix ConvertDS24S8ToRGBA8 image targets
...
Ensure that the Multi-Sample texture is used for the destination color image as well. Should the dest image be MSAA too? Or should all the values be resolved into a minimum depth and some combination of stencil-values here?
2026-05-26 07:21:26 -07:00
Wunkolo
f0c8daa59c
renderer_vulkan: Fix Surface::ScaleUp scale/sample increase
...
This should be checking the _new_ value to possibly cull upscaled texture creation rather than the current value of the surface. Fixes broken up render passes when drawing UI in some games.
2026-05-26 07:21:26 -07:00
Wunkolo
d9cd7f4caa
renderer_vulkan: Fix MSAA framebuffer target resolve surface
...
Use the specified type rather than defaulting to the surface's current one(implicit `ImageView` argument).
2026-05-26 07:21:26 -07:00
Wunkolo
e09b81c9a2
renderer_vulkan: Fix narrowing byte conversion
...
Fixes a compilation error on Unix platforms.
2026-05-26 07:21:26 -07:00
Wunkolo
ff47e3725f
renderer_vulkan: Add TextureRuntime::ResolveTexture
...
Rather than use a big lambda, just rip this out into a proper function for other blit functions to utilize.
2026-05-26 07:21:26 -07:00
Wunkolo
cf20dad11d
renderer_vulkan: Fix cleanup and debug-naming for d24s8_to_rgba8_ms_comp
2026-05-26 07:21:26 -07:00
Wunkolo
b004b35c7e
renderer_vulkan: Fix initialization of image handles
...
Try to optimally create the new image handles when a change in res scale or sample-count has actually occured. MSAA images need to be updated too in the case that the resolution scale has changed
2026-05-26 07:21:25 -07:00
Wunkolo
3c2d1c7203
renderer_vulkan: Derive framebuffer sample-count from attachments
...
Derive the framebuffer sample-count from the input color and depth operands. Similar to how `res_scale` is determined.
2026-05-26 07:21:25 -07:00
Wunkolo
d847e44b09
renderer_vulkan: Fix dangling surface reference during msaa resolve
...
These individual parameters need to be copied as the reference to the surface-object only lasts within the scope of this function.
2026-05-26 07:21:25 -07:00
Wunkolo
0fded6e305
renderer_vulkan: Fix Framebuffer::sample_count move-operator
...
`sample_count` needs to be move/copied over.
Also reorder the accessor order to match the declaration of variables.
2026-05-26 07:21:25 -07:00
Wunkolo
6281dd1aeb
renderer_vulkan: Fix multisample texture init barrier
...
Should address the MultiSampled image directly since the multisampled image is just a transient image and not the leading state of the image.
2026-05-26 07:21:25 -07:00
Wunkolo
c172da135e
renderer_vulkan: Implement multisample texture runtime
...
This seems to be enough for simple programs to render with MSAA enabled!
2026-05-26 07:21:25 -07:00
Wunkolo
79d496f8a2
renderer_vulkan: Implement multisample pipeline/renderpass support
...
Allows multi-sample render passes and graphics pipelines to be created, using sample-rate shading rather than coverage-based MSAA.
2026-05-26 07:21:25 -07:00
Wunkolo
18d8eb550e
rasterizer_cache: Initial support for multi-sample surfaces
2026-05-26 07:21:25 -07:00
Wunkolo
6d498a94e9
vk_instance: Add detection of MSAA features
...
Full multi-sample support is when renderpass-2 and depth-stencil-resolve extensions are available and when sample-rate-shading and msaa-storage-images are supported.
2026-05-26 07:21:25 -07:00
Wunkolo
de0767271d
vk_blit_helper: Add d24s8_to_rgba8_ms_comp
...
Helper host-shader for blitting multi-sampled DS24S8 textures to multi-sampled RGBA8
2026-05-26 07:21:25 -07:00
Wunkolo
148de9e5e2
config: Add sample_count renderer option
...
Option is only enabled when the renderer is set to Vulkan, for now.
2026-05-26 07:21:25 -07:00
OpenSauce04
59da460177
Migrate translations to new language codes
2026-05-25 19:08:09 +01:00
OpenSauce04
8bdb60a6e1
Updated translations via Transifex
2026-05-25 19:08:09 +01:00
OpenSauce04
383a28795e
ci: Build azahar-room Docker image for ARM64
2026-05-25 17:04:47 +01:00
OpenSauce04
725544f3b4
ci: Add --no-cache to Docker build command
...
This is mostly just for specificity. In practice this will never do anything in CI because there will never be any cache to use, but if there was, we wouldn't want to use it
2026-05-25 17:04:47 +01:00
OpenSauce04
135f10320a
docker: Fix azahar-room Dockerfile failing to build with podman
2026-05-25 17:04:47 +01:00
OpenSauce04
0b7114cbf8
docker: Break up build commands into seperate RUN calls
...
I think this was from back when the Dockerfile was first being written, before the 'builder' and 'final' stages were introduced which make this former optimization attempt completely redundant
2026-05-25 17:04:47 +01:00
OpenSauce04
95d42cb40a
docker: Remove now-redundant CMake options from azahar-room Dockerfile
2026-05-25 17:04:47 +01:00
OpenSauce04
f0bc64d967
IntListSetting.kt: Use generated layouts_to_cycle key
2026-05-24 12:55:09 +01:00
Masamune3210
ad8526c4cf
pica_core.cpp: Initialize IRQ_CMP ( #2143 )
...
* initialize IRQ_CMP
* add comment explaining requirement
* Fix formatting
---------
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2026-05-24 11:07:57 +01:00
project516
ae7d7dca1f
ci: Update github actions to NodeJS 24 ( #2110 )
...
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2026-05-23 21:24:54 +01:00
OpenSauce04
4a4b75b0de
libretro.yml: Don't fail fast in macOS job matrix
2026-05-23 19:59:34 +01:00
PabloMK7
b186b04995
core: Refactor thread unschedule and add debug frontend unschedule ( #2145 )
2026-05-23 17:25:14 +02:00
Wunk
ab6896a2ca
core: Fix debug compile error ( #2132 )
...
Fixes a compilation error when building in Debug mode. `count` should be `async_data->count` in this log message.
2026-05-17 15:15:21 +02:00
OpenSauce04
e11f3da493
Updated translations via Transifex
2026-05-16 17:32:14 +01:00
OpenSauce04
8ffb94b06c
Implement Z3DS compression CLI in new citra_cli static library
2026-05-16 17:13:31 +01:00
PabloMK7
267887d7a9
Add attestation support to increase release security ( #2117 )
...
* ci: Add sbom and attestation
* tools: Add verify-release.sh
* verify-release.sh: Set executable permission
* verify-release.sh: Put downloads into a gitignored directory
* tools: Make verify-release also download sbom
---------
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2026-05-14 14:52:10 +02:00
OpenSauce04
778ca369cd
ci: Strip libretro cores after building
2026-05-12 11:56:22 +01:00
OpenSauce04
dbe7fd979f
cmake: Add EXCLUDE_FROM_ALL to targets where applicable
2026-05-09 14:01:56 +01:00
PabloMK7
1c7c7a5f1b
svc: Fix instruction cache invalidation only affecting current core ( #2100 )
2026-05-09 14:03:55 +02:00
OpenSauce04
bf59d26c48
externals: Update dllwalker to commit 2f8b349
2026-05-09 10:32:52 +01:00
OpenSauce04
652fc02175
ci: Implement MXE CI/CD build job
2026-05-09 10:32:52 +01:00
OpenSauce04
854e198196
cmake: Implemented bundle target for MXE builds
...
Just copies the content of bin/<type>/ to bundle/
2026-05-09 10:32:52 +01:00
OpenSauce04
5ecd402811
cmake: Explicitly use gcc-ar instead of ar for MXE builds
2026-05-09 10:32:52 +01:00
OpenSauce04
0ce2a30d20
Implement proper DLL resolution for MXE builds
2026-05-09 10:32:52 +01:00
OpenSauce04
644a181aff
cmake: Explicitly disable BUILD_SHARED_LIBS
2026-05-09 10:32:52 +01:00