mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-21 19:36:55 +02:00
tesselation support in GUI
This commit is contained in:
@@ -167,6 +167,12 @@
|
|||||||
<property name="text"><string>Enable readback</string></property>
|
<property name="text"><string>Enable readback</string></property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="7" column="1">
|
||||||
|
<widget class="QCheckBox" name="checkBox_tessellation">
|
||||||
|
<property name="toolTip"><string>Draw tessellated geometry. Disabled by default; unsupported tessellation may cause crashes.</string></property>
|
||||||
|
<property name="text"><string>Enable tessellation support (experimental)</string></property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@@ -275,13 +281,13 @@
|
|||||||
<item>
|
<item>
|
||||||
<widget class="QCheckBox" name="checkBox_amd_cpu">
|
<widget class="QCheckBox" name="checkBox_amd_cpu">
|
||||||
<property name="toolTip"><string>Patch CPU instructions that differ between AMD and the host CPU.</string></property>
|
<property name="toolTip"><string>Patch CPU instructions that differ between AMD and the host CPU.</string></property>
|
||||||
<property name="text"><string>AMD CPU patch (EXPERIMENTAL)</string></property>
|
<property name="text"><string>AMD CPU patch (experimental)</string></property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QCheckBox" name="checkBox_red_zone_protection">
|
<widget class="QCheckBox" name="checkBox_red_zone_protection">
|
||||||
<property name="toolTip"><string>Helps prevent crashes in some games on Windows</string></property>
|
<property name="toolTip"><string>Helps prevent crashes in some games on Windows</string></property>
|
||||||
<property name="text"><string>Windows SysV red zone crash protection (Experimental)</string></property>
|
<property name="text"><string>Windows SysV red zone crash protection (experimental)</string></property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
|||||||
@@ -92,6 +92,7 @@ public:
|
|||||||
int gpu_index = -1;
|
int gpu_index = -1;
|
||||||
bool fullscreen_enabled = false;
|
bool fullscreen_enabled = false;
|
||||||
bool readback_linear_images = false;
|
bool readback_linear_images = false;
|
||||||
|
bool tessellation_enabled = false;
|
||||||
int vblank_frequency = 60;
|
int vblank_frequency = 60;
|
||||||
int console_language = DEFAULT_CONSOLE_LANGUAGE;
|
int console_language = DEFAULT_CONSOLE_LANGUAGE;
|
||||||
bool vulkan_validation_enabled = false;
|
bool vulkan_validation_enabled = false;
|
||||||
@@ -122,6 +123,7 @@ public:
|
|||||||
gpu_index = other.gpu_index;
|
gpu_index = other.gpu_index;
|
||||||
fullscreen_enabled = other.fullscreen_enabled;
|
fullscreen_enabled = other.fullscreen_enabled;
|
||||||
readback_linear_images = other.readback_linear_images;
|
readback_linear_images = other.readback_linear_images;
|
||||||
|
tessellation_enabled = other.tessellation_enabled;
|
||||||
vblank_frequency = other.vblank_frequency;
|
vblank_frequency = other.vblank_frequency;
|
||||||
console_language = other.console_language;
|
console_language = other.console_language;
|
||||||
vulkan_validation_enabled = other.vulkan_validation_enabled;
|
vulkan_validation_enabled = other.vulkan_validation_enabled;
|
||||||
@@ -169,6 +171,7 @@ public:
|
|||||||
KYTY_CFG_SET(gpu_index);
|
KYTY_CFG_SET(gpu_index);
|
||||||
KYTY_CFG_SET(fullscreen_enabled);
|
KYTY_CFG_SET(fullscreen_enabled);
|
||||||
KYTY_CFG_SET(readback_linear_images);
|
KYTY_CFG_SET(readback_linear_images);
|
||||||
|
KYTY_CFG_SET(tessellation_enabled);
|
||||||
KYTY_CFG_SET(vblank_frequency);
|
KYTY_CFG_SET(vblank_frequency);
|
||||||
KYTY_CFG_SET(console_language);
|
KYTY_CFG_SET(console_language);
|
||||||
KYTY_CFG_SET(vulkan_validation_enabled);
|
KYTY_CFG_SET(vulkan_validation_enabled);
|
||||||
@@ -210,6 +213,7 @@ public:
|
|||||||
}
|
}
|
||||||
KYTY_CFG_GET(fullscreen_enabled);
|
KYTY_CFG_GET(fullscreen_enabled);
|
||||||
KYTY_CFG_GET(readback_linear_images);
|
KYTY_CFG_GET(readback_linear_images);
|
||||||
|
KYTY_CFG_GET(tessellation_enabled);
|
||||||
vblank_frequency = s->value("vblank_frequency", vblank_frequency).toInt();
|
vblank_frequency = s->value("vblank_frequency", vblank_frequency).toInt();
|
||||||
console_language = s->value("console_language", console_language).toInt();
|
console_language = s->value("console_language", console_language).toInt();
|
||||||
if (console_language < 0 || console_language > MAX_CONSOLE_LANGUAGE) {
|
if (console_language < 0 || console_language > MAX_CONSOLE_LANGUAGE) {
|
||||||
|
|||||||
@@ -230,6 +230,7 @@ void ConfigurationEditDialog::Init(const Configuration& info) {
|
|||||||
: 0);
|
: 0);
|
||||||
m_ui->checkBox_fullscreen->setChecked(info.fullscreen_enabled);
|
m_ui->checkBox_fullscreen->setChecked(info.fullscreen_enabled);
|
||||||
m_ui->checkBox_readback->setChecked(info.readback_linear_images);
|
m_ui->checkBox_readback->setChecked(info.readback_linear_images);
|
||||||
|
m_ui->checkBox_tessellation->setChecked(info.tessellation_enabled);
|
||||||
m_ui->spinBox_vblank_frequency->setValue(info.vblank_frequency);
|
m_ui->spinBox_vblank_frequency->setValue(info.vblank_frequency);
|
||||||
m_ui->comboBox_console_language->clear();
|
m_ui->comboBox_console_language->clear();
|
||||||
m_ui->comboBox_console_language->addItems(CONSOLE_LANGUAGE_NAMES);
|
m_ui->comboBox_console_language->addItems(CONSOLE_LANGUAGE_NAMES);
|
||||||
@@ -375,6 +376,7 @@ static void UpdateInfo(Configuration& info, Ui::ConfigurationEditDialog& ui) {
|
|||||||
info.gpu_index = ui.comboBox_gpu->currentIndex() - 1;
|
info.gpu_index = ui.comboBox_gpu->currentIndex() - 1;
|
||||||
info.fullscreen_enabled = ui.checkBox_fullscreen->isChecked();
|
info.fullscreen_enabled = ui.checkBox_fullscreen->isChecked();
|
||||||
info.readback_linear_images = ui.checkBox_readback->isChecked();
|
info.readback_linear_images = ui.checkBox_readback->isChecked();
|
||||||
|
info.tessellation_enabled = ui.checkBox_tessellation->isChecked();
|
||||||
info.vblank_frequency = ui.spinBox_vblank_frequency->value();
|
info.vblank_frequency = ui.spinBox_vblank_frequency->value();
|
||||||
info.console_language = ui.comboBox_console_language->currentIndex();
|
info.console_language = ui.comboBox_console_language->currentIndex();
|
||||||
info.vulkan_validation_enabled = ui.checkBox_vulkan_validation->isChecked();
|
info.vulkan_validation_enabled = ui.checkBox_vulkan_validation->isChecked();
|
||||||
|
|||||||
@@ -226,6 +226,9 @@ static QStringList CreateEmulatorArgs(const Configuration& info) {
|
|||||||
args << "--fullscreen";
|
args << "--fullscreen";
|
||||||
}
|
}
|
||||||
args << "--readback-linear-images" << BoolArg(info.readback_linear_images);
|
args << "--readback-linear-images" << BoolArg(info.readback_linear_images);
|
||||||
|
if (info.tessellation_enabled) {
|
||||||
|
args << "--tessellation";
|
||||||
|
}
|
||||||
args << "--vblank-frequency" << QString::number(info.vblank_frequency);
|
args << "--vblank-frequency" << QString::number(info.vblank_frequency);
|
||||||
args << "--console-language" << QString::number(info.console_language);
|
args << "--console-language" << QString::number(info.console_language);
|
||||||
args << "--vulkan-validation" << BoolArg(info.vulkan_validation_enabled);
|
args << "--vulkan-validation" << BoolArg(info.vulkan_validation_enabled);
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
PatchesDialog::PatchesDialog(const Configuration& game, QWidget* parent)
|
PatchesDialog::PatchesDialog(const Configuration& game, QWidget* parent)
|
||||||
: QDialog(parent), m_title_id(game.title_id.trimmed().toUpper()) {
|
: QDialog(parent), m_title_id(game.title_id.trimmed().toUpper()) {
|
||||||
setAttribute(Qt::WA_DeleteOnClose);
|
setAttribute(Qt::WA_DeleteOnClose);
|
||||||
setWindowTitle(tr("Cheats (Experimental) - %1").arg(game.name));
|
setWindowTitle(tr("Cheats (experimental) - %1").arg(game.name));
|
||||||
resize(640, 480);
|
resize(640, 480);
|
||||||
|
|
||||||
auto* layout = new QVBoxLayout(this);
|
auto* layout = new QVBoxLayout(this);
|
||||||
|
|||||||
Reference in New Issue
Block a user