[vulkan] Initial implementation of post-processing shaders

This commit is contained in:
CamilleLaVey
2026-09-04 03:19:15 -04:00
parent 1dcc574591
commit f24b14e7cf
39 changed files with 3307 additions and 0 deletions
+16
View File
@@ -13,6 +13,7 @@
#include "common/settings_enums.h"
#include "frontend_common/settings_generator.h"
#include "render/performance_overlay.h"
#include "configuration/configure_post_processing.h"
#include "updater/update_dialog.h"
#include "common/fs/ryujinx_compat.h"
@@ -1518,6 +1519,7 @@ void MainWindow::ConnectMenuEvents() {
connect_menu(ui->action_Show_Filter_Bar, &MainWindow::OnToggleFilterBar);
connect_menu(ui->action_Show_Status_Bar, &MainWindow::OnToggleStatusBar);
connect_menu(ui->action_Show_Performance_Overlay, &MainWindow::OnTogglePerfOverlay);
connect_menu(ui->action_Post_Processing_Shaders, &MainWindow::OnPostProcessingShaders);
connect_menu(ui->action_Reset_Window_Size_720, &MainWindow::ResetWindowSize720);
connect_menu(ui->action_Reset_Window_Size_900, &MainWindow::ResetWindowSize900);
@@ -3900,6 +3902,20 @@ void MainWindow::OnTogglePerfOverlay() {
perf_overlay->setVisible(ui->action_Show_Performance_Overlay->isChecked());
}
void MainWindow::OnPostProcessingShaders() {
if (post_processing_dialog == nullptr) {
post_processing_dialog = new ConfigurePostProcessing(this);
connect(post_processing_dialog, &QDialog::finished, post_processing_dialog, [this]() {
post_processing_dialog->deleteLater();
post_processing_dialog = nullptr;
});
}
post_processing_dialog->show();
post_processing_dialog->raise();
post_processing_dialog->activateWindow();
}
void MainWindow::OnGameListRefresh() {
// Resets metadata cache and reloads
QtCommon::Game::ResetMetadata(false);