Move the Hardware Transform setting to developer tools, reset by renaming the key.

This setting should always be on, not having it ruins performance.
This commit is contained in:
Henrik Rydgård committed 2026-10-16 13:27:23 +02:00
1 parent 9df356129b
commit f5255eefaf
9 files changed
+7 -59

No files matched your search

+1 -1
View File
@@ -724,7 +724,7 @@ static const ConfigSetting graphicsSettings[] = {
ConfigSetting("DepthRasterMode", SETTING(g_Config, iDepthRasterMode), &DefaultDepthRaster, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("SoftwareRenderer", SETTING(g_Config, bSoftwareRendering), false, CfgFlag::PER_GAME),
ConfigSetting("SoftwareDisableDithering", SETTING(g_Config, bSoftwareDisableDithering), false, CfgFlag::PER_GAME),
ConfigSetting("HardwareTransform", SETTING(g_Config, bHardwareTransform), true, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("HardwareTransformDebug", SETTING(g_Config, bHardwareTransform), true, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("TextureFiltering", SETTING(g_Config, iTexFiltering), 1, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("Smart2DTexFiltering", SETTING(g_Config, bSmart2DTexFiltering), false, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("InternalResolution", SETTING(g_Config, iInternalResolution), &DefaultInternalResolution, CfgFlag::PER_GAME | CfgFlag::REPORT),
+1
View File
@@ -521,6 +521,7 @@ void DeveloperToolsScreen::CreateGraphicsTab(UI::LinearLayout *list) {
list->Add(new ItemHeader(sy->T("General")));
list->Add(new CheckBox(&g_Config.bVendorBugChecksEnabled, dev->T("Enable driver bug workarounds")));
list->Add(new CheckBox(&g_Config.bShaderCache, dev->T("Enable shader cache")));
list->Add(new CheckBox(&g_Config.bHardwareTransform, gr->T("Hardware Transform")));
auto displayRefreshRate = list->Add(new PopupSliderChoice(&g_Config.iDisplayRefreshRate, 60, 1000, 60, dev->T("Display refresh rate"), 1, screenManager()));
displayRefreshRate->SetFormat(si->T("%d Hz"));
+5
View File
@@ -282,6 +282,11 @@ void EmuScreen::ProcessGameBoot(const Path &filename) {
g_OSD.Show(OSDType::MESSAGE_WARNING, "Shader cache is disabled (developer)");
}
if (!g_Config.bHardwareTransform) {
// Only developers should ever see this.
g_OSD.Show(OSDType::MESSAGE_WARNING, "Hardware transform is disabled (developer)");
}
if (g_Config.bTiltInputEnabled && g_Config.iTiltInputType != 0 && System_GetPropertyBool(SYSPROP_HAS_ACCELEROMETER)) {
auto co = GetI18NCategory(I18NCat::CONTROLS);
auto di = GetI18NCategory(I18NCat::DIALOG);
-5
View File
@@ -520,11 +520,6 @@ void GameSettingsScreen::CreateGraphicsSettings(UI::ViewGroup *graphicsSettings)
graphicsSettings->Add(new SettingHint(gr->T("Faster, input lag"), inflightChoice)); // TODO: This hint could use improvement.
}
if (deviceType != DEVICE_TYPE_VR) {
CheckBox *hwTransform = graphicsSettings->Add(new CheckBox(&g_Config.bHardwareTransform, gr->T("Hardware Transform")));
hwTransform->SetDisabledPtr(&g_Config.bSoftwareRendering);
}
graphicsSettings->Add(new ItemHeader(gr->T("Texture upscaling")));
if (GetGPUBackend() == GPUBackend::VULKAN) {
-11
View File
@@ -303,7 +303,6 @@ namespace MainWindow {
TranslateMenuItem(menu, ID_TEXTURESCALING_BICUBIC);
TranslateMenuItem(menu, ID_TEXTURESCALING_HYBRID_BICUBIC);
TranslateMenuItem(menu, ID_TEXTURESCALING_DEPOSTERIZE);
TranslateMenuItem(menu, ID_OPTIONS_HARDWARETRANSFORM);
TranslateMenuItem(menu, ID_EMULATION_SOUND);
TranslateMenuItem(menu, ID_EMULATION_CHEATS, g_Config.bSystemControls ? L"\tCtrl+T" : L"");
TranslateMenuItem(menu, ID_EMULATION_CHAT, g_Config.bSystemControls ? L"\tCtrl+C" : L"");
@@ -733,15 +732,6 @@ namespace MainWindow {
System_PostUIMessage(UIMessage::REQUEST_CLEAR_JIT);
break;
case ID_OPTIONS_HARDWARETRANSFORM:
System_RunOnMainThread([]() {
auto gr = GetI18NCategory(I18NCat::GRAPHICS);
g_Config.bHardwareTransform = !g_Config.bHardwareTransform;
System_PostUIMessage(UIMessage::GPU_CONFIG_CHANGED);
g_OSD.ShowOnOff(gr->T("Hardware Transform"), g_Config.bHardwareTransform);
});
break;
case ID_OPTIONS_DISPLAY_LAYOUT:
System_PostUIMessage(UIMessage::SHOW_DISPLAY_LAYOUT_EDITOR);
break;
@@ -1047,7 +1037,6 @@ namespace MainWindow {
#define CHECKITEM(item,value) CheckMenuItem(menu,item,MF_BYCOMMAND | ((value) ? MF_CHECKED : MF_UNCHECKED));
CHECKITEM(ID_DEBUG_IGNOREILLEGALREADS, g_Config.bIgnoreBadMemAccess);
CHECKITEM(ID_DEBUG_SHOWDEBUGSTATISTICS, (DebugOverlay)g_Config.iDebugOverlay == DebugOverlay::DEBUG_STATS);
CHECKITEM(ID_OPTIONS_HARDWARETRANSFORM, g_Config.bHardwareTransform);
CHECKITEM(ID_DEBUG_BREAKONLOAD, !g_Config.bAutoRun);
CHECKITEM(ID_OPTIONS_FRAMESKIP_AUTO, g_Config.bAutoFrameSkip);
CHECKITEM(ID_OPTIONS_FRAMESKIP, g_Config.iFrameSkip != FRAMESKIP_OFF);
-2
View File
@@ -668,8 +668,6 @@ BEGIN
MENUITEM "", 0, MFT_SEPARATOR
MENUITEM "Deposterize", ID_TEXTURESCALING_DEPOSTERIZE
END
MENUITEM "Hardware Transform", ID_OPTIONS_HARDWARETRANSFORM
MENUITEM "", 0, MFT_SEPARATOR
MENUITEM "Enable Sound", ID_EMULATION_SOUND
MENUITEM "", 0, MFT_SEPARATOR
MENUITEM "Enable Cheats", ID_EMULATION_CHEATS
-1
View File
@@ -159,7 +159,6 @@
#define ID_OPTIONS_SCREEN3X 40027
#define ID_OPTIONS_SCREEN4X 40028
#define ID_OPTIONS_SCREEN5X 40029
#define ID_OPTIONS_HARDWARETRANSFORM 40030
#define IDC_STEPHLE 40032
#define ID_OPTIONS_LINEARFILTERING 40033
#define ID_OPTIONS_AUTOMAXQUALITYFILTERING 40043
-9
View File
@@ -820,15 +820,6 @@ static void check_variables(CoreParameter &coreParam)
g_Config.iSplineBezierQuality = 2;
}
var.key = "ppsspp_gpu_hardware_transform";
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
{
if (!strcmp(var.value, "disabled"))
g_Config.bHardwareTransform = false;
else
g_Config.bHardwareTransform = true;
}
var.key = "ppsspp_lower_resolution_for_effects";
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
{
-30
View File
@@ -567,36 +567,6 @@ struct retro_core_option_v2_definition option_defs_us[] = {
},
"disabled"
},
{
"ppsspp_gpu_hardware_transform",
"Hardware Transform",
NULL,
NULL,
NULL,
"video",
BOOL_OPTIONS,
"enabled"
},
{
"ppsspp_software_skinning",
"Software Skinning",
NULL,
"Combine skinned model draws on the CPU, faster in most games.",
NULL,
"video",
BOOL_OPTIONS,
"enabled"
},
{
"ppsspp_hardware_tesselation",
"Hardware Tesselation",
NULL,
"Uses hardware to make curves.",
NULL,
"video",
BOOL_OPTIONS,
"disabled"
},
{
"ppsspp_texture_scaling_type",
"Texture Upscale Type",