gsdx linux: add a gui checkbox for the "fast texture invalidation" hack

This commit is contained in:
Gregory Hainaut 2016-03-20 13:58:55 +01:00
parent 7eb242d3ad
commit a83b8d62ec
3 changed files with 11 additions and 2 deletions

View File

@ -352,6 +352,7 @@ void populate_hack_table(GtkWidget* hack_table)
GtkWidget* align_sprite_check = CreateCheckBox("Align sprite hack", "UserHacks_align_sprite_X");
GtkWidget* preload_gs_check = CreateCheckBox("Preload Frame", "preload_frame_with_gs_data");
GtkWidget* hack_safe_fbmask = CreateCheckBox("Safe Accurate Blending", "UserHacks_safe_fbmask");
GtkWidget* hack_fast_inv = CreateCheckBox("Fast Texture Invalidation", "UserHacks_DisablePartialInvalidation");
GtkWidget* hack_sprite_box = CreateComboBoxFromVector(theApp.m_gs_hack, "UserHacks_SpriteHack");
GtkWidget* hack_sprite_label = left_label("Alpha-Sprite Hack:");
@ -370,13 +371,15 @@ void populate_hack_table(GtkWidget* hack_table)
AddTooltip(align_sprite_check, IDC_ALIGN_SPRITE);
AddTooltip(stretch_hack_label, stretch_hack_box, IDC_ROUND_SPRITE);
AddTooltip(preload_gs_check, IDC_PRELOAD_GS);
AddTooltip(hack_safe_fbmask, IDC_SAFE_FBMASK);
AddTooltip(hack_fast_inv, IDC_FAST_TC_INV);
s_table_line = 0;
InsertWidgetInTable(hack_table , hack_enble_check);
InsertWidgetInTable(hack_table , hack_wild_check , align_sprite_check);
InsertWidgetInTable(hack_table , hack_offset_check , preload_gs_check);
InsertWidgetInTable(hack_table , hack_safe_fbmask);
InsertWidgetInTable(hack_table , hack_safe_fbmask , hack_fast_inv);
InsertWidgetInTable(hack_table , hack_sprite_label , hack_sprite_box );
InsertWidgetInTable(hack_table , stretch_hack_label , stretch_hack_box );
InsertWidgetInTable(hack_table , hack_skipdraw_label , hack_skipdraw_spin);

View File

@ -131,6 +131,11 @@ const char* dialog_message(int ID, bool* updateText) {
return "Uploads GS data when rendering a new frame to reproduce some effects accurately. Fixes black screen issues in games like Armored Core: Last Raven.";
case IDC_MIPMAP:
return "Enables mipmapping, which some games require to render correctly. Turn off only for debug purposes.";
#ifdef __linux__
case IDC_FAST_TC_INV:
return "By default, the texture cache handles partial invalidations. Unfortunately it is very costly to compute CPU wise."
"\n\nThis hack replaces the partial invalidation with a complete deletion of the texture to reduce the CPU load.\n\nIt helps snowblind engine game.";
#endif
default:
if (updateText)
*updateText = false;

View File

@ -72,6 +72,7 @@ enum {
IDC_SHADER_FX,
IDC_FXAA,
IDC_MIPMAP,
IDC_PRELOAD_GS
IDC_PRELOAD_GS,
IDC_FAST_TC_INV,
};
#endif