mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2025-07-21 01:45:47 +00:00
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk. These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include <memory>
|
|
#include <QWidget>
|
|
|
|
namespace Core {
|
|
class System;
|
|
}
|
|
|
|
namespace ConfigurationShared {
|
|
enum class CheckState;
|
|
}
|
|
|
|
namespace Ui {
|
|
class ConfigureGraphicsAdvanced;
|
|
}
|
|
|
|
class ConfigureGraphicsAdvanced : public QWidget {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit ConfigureGraphicsAdvanced(const Core::System& system_, QWidget* parent = nullptr);
|
|
~ConfigureGraphicsAdvanced() override;
|
|
|
|
void ApplyConfiguration();
|
|
void SetConfiguration();
|
|
|
|
private:
|
|
void changeEvent(QEvent* event) override;
|
|
void RetranslateUI();
|
|
|
|
void SetupPerGameUI();
|
|
|
|
std::unique_ptr<Ui::ConfigureGraphicsAdvanced> ui;
|
|
|
|
ConfigurationShared::CheckState use_vsync;
|
|
ConfigurationShared::CheckState use_asynchronous_shaders;
|
|
ConfigurationShared::CheckState use_fast_gpu_time;
|
|
ConfigurationShared::CheckState use_pessimistic_flushes;
|
|
ConfigurationShared::CheckState use_vulkan_driver_pipeline_cache;
|
|
|
|
const Core::System& system;
|
|
};
|