diff --git a/plugins/GSdx/GS.cpp b/plugins/GSdx/GS.cpp index 11943153fd..f7c73a5d87 100644 --- a/plugins/GSdx/GS.cpp +++ b/plugins/GSdx/GS.cpp @@ -194,13 +194,6 @@ EXPORT_C GSclose() static int _GSopen(void** dsp, char* title, int renderer, int threads = -1) { - // I really don't know the impact on windows! It could work -#ifdef __linux__ - if (theApp.GetConfig("enable_nvidia_multi_thread", 1)) { - setenv("__GL_THREADED_OPTIMIZATIONS", "1", 0); - } -#endif - GSDevice* dev = NULL; if(renderer == -1) diff --git a/plugins/GSdx/GSLinuxDialog.cpp b/plugins/GSdx/GSLinuxDialog.cpp index 40b4d671b1..dd76a2297a 100644 --- a/plugins/GSdx/GSLinuxDialog.cpp +++ b/plugins/GSdx/GSLinuxDialog.cpp @@ -296,8 +296,7 @@ void populate_hw_table(GtkWidget* hw_table) GtkWidget* acc_date_check = CreateCheckBox("Accurate Date", "accurate_date", false); GtkWidget* acc_cclip_check = CreateCheckBox("Accurate Color Clipping", "accurate_colclip", false); GtkWidget* acc_fbmsk_check = CreateCheckBox("Accurate FrameBuffer Mask", "accurate_fbmask", false); - - GtkWidget* MT_nvidia_check = CreateCheckBox("Nvidia Multi-Thread support", "enable_nvidia_multi_thread", true); + GtkWidget* tc_depth_check = CreateCheckBox("Full Depth Emulation", "texture_cache_depth", true); // Some helper string gtk_widget_set_tooltip_text(paltex_check, dialog_message(IDC_PALTEX)); @@ -305,12 +304,12 @@ void populate_hw_table(GtkWidget* hw_table) gtk_widget_set_tooltip_text(acc_date_check, dialog_message(IDC_ACCURATE_DATE)); gtk_widget_set_tooltip_text(acc_cclip_check, dialog_message(IDC_ACCURATE_COLCLIP)); gtk_widget_set_tooltip_text(acc_fbmsk_check, dialog_message(IDC_ACCURATE_FBMASK)); - gtk_widget_set_tooltip_text(MT_nvidia_check, "Huge speedup on Nvidia binary driver! No effect otherwise."); gtk_widget_set_tooltip_text(crc_label, dialog_message(IDC_CRC_LEVEL)); gtk_widget_set_tooltip_text(crc_combo_box, dialog_message(IDC_CRC_LEVEL)); + gtk_widget_set_tooltip_text(tc_depth_check, dialog_message(IDC_TC_DEPTH)); s_table_line = 0; - InsertWidgetInTable(hw_table, paltex_check, MT_nvidia_check); + InsertWidgetInTable(hw_table, paltex_check, tc_depth_check); InsertWidgetInTable(hw_table, acc_blend_check, acc_date_check); InsertWidgetInTable(hw_table, acc_cclip_check, acc_fbmsk_check); InsertWidgetInTable(hw_table, filter_label, filter_combo_box); @@ -354,11 +353,12 @@ void populate_sw_table(GtkWidget* sw_table) GtkWidget* threads_spin = CreateSpinButton(0, 32, "extrathreads", 0); GtkWidget* aa_check = CreateCheckBox("Edge anti-aliasing (AA1)", "aa1"); + GtkWidget* mipmap_check = CreateCheckBox("Mipmap", "mipmap", true); GtkWidget* spin_thread_check= CreateCheckBox("Disable thread sleeping (6+ cores CPU)", "spin_thread"); s_table_line = 0; InsertWidgetInTable(sw_table , threads_label , threads_spin); - InsertWidgetInTable(sw_table , aa_check); + InsertWidgetInTable(sw_table , aa_check, mipmap_check); InsertWidgetInTable(sw_table , spin_thread_check , spin_thread_check); } diff --git a/plugins/GSdx/GSSetting.cpp b/plugins/GSdx/GSSetting.cpp index 0dd76596a6..361bdd4141 100644 --- a/plugins/GSdx/GSSetting.cpp +++ b/plugins/GSdx/GSSetting.cpp @@ -122,6 +122,8 @@ const char* dialog_message(int ID, bool* updateText) { case IDC_ACCURATE_FBMASK: return "Implement partial color masking\n\n" "No status yet on the speed impact\n\nNote: it requires the 4.5 openGL extension GL_ARB_texture_barrier"; + case IDC_TC_DEPTH: + return "Allow to convert Depth buffer from/to Color buffer. It is used for blur & depth of field effects"; #endif default: if (updateText) diff --git a/plugins/GSdx/GSSetting.h b/plugins/GSdx/GSSetting.h index 60c29e5ade..21d64ec9c0 100644 --- a/plugins/GSdx/GSSetting.h +++ b/plugins/GSdx/GSSetting.h @@ -67,6 +67,7 @@ enum { IDC_ACCURATE_DATE, IDC_ACCURATE_COLCLIP, IDC_ACCURATE_FBMASK, + IDC_TC_DEPTH, IDC_CRC_LEVEL }; #endif diff --git a/plugins/GSdx/GSSettingsDlg.cpp b/plugins/GSdx/GSSettingsDlg.cpp index 84ecb71264..a19d6da7df 100644 --- a/plugins/GSdx/GSSettingsDlg.cpp +++ b/plugins/GSdx/GSSettingsDlg.cpp @@ -197,7 +197,7 @@ void GSSettingsDlg::OnInit() CheckDlgButton(m_hWnd, IDC_ACCURATE_BLEND, theApp.GetConfig("accurate_blend", 1)); CheckDlgButton(m_hWnd, IDC_ACCURATE_DATE, theApp.GetConfig("accurate_date", 0)); CheckDlgButton(m_hWnd, IDC_ACCURATE_COLCLIP, theApp.GetConfig("accurate_colclip", 0)); - CheckDlgButton(m_hWnd, IDC_OLGDEPTH, theApp.GetConfig("texture_cache_depth", 0)); + CheckDlgButton(m_hWnd, IDC_TC_DEPTH, theApp.GetConfig("texture_cache_depth", 0)); // Shade Boost CheckDlgButton(m_hWnd, IDC_SHADEBOOST, theApp.GetConfig("ShadeBoost", 0)); @@ -335,7 +335,7 @@ bool GSSettingsDlg::OnCommand(HWND hWnd, UINT id, UINT code) theApp.SetConfig("accurate_blend", (int)IsDlgButtonChecked(m_hWnd, IDC_ACCURATE_BLEND)); theApp.SetConfig("accurate_date", (int)IsDlgButtonChecked(m_hWnd, IDC_ACCURATE_DATE)); theApp.SetConfig("accurate_colclip", (int)IsDlgButtonChecked(m_hWnd, IDC_ACCURATE_COLCLIP)); - theApp.SetConfig("texture_cache_depth", (int)IsDlgButtonChecked(m_hWnd, IDC_OLGDEPTH)); + theApp.SetConfig("texture_cache_depth", (int)IsDlgButtonChecked(m_hWnd, IDC_TC_DEPTH)); // Shade Boost @@ -440,7 +440,7 @@ void GSSettingsDlg::UpdateControls() EnableWindow(GetDlgItem(m_hWnd, IDC_ACCURATE_BLEND), ogl && hw); EnableWindow(GetDlgItem(m_hWnd, IDC_ACCURATE_DATE), ogl && hw); EnableWindow(GetDlgItem(m_hWnd, IDC_ACCURATE_COLCLIP), ogl && hw); - EnableWindow(GetDlgItem(m_hWnd, IDC_OLGDEPTH), ogl && hw); + EnableWindow(GetDlgItem(m_hWnd, IDC_TC_DEPTH), ogl && hw); //EnableWindow(GetDlgItem(m_hWnd, IDC_AA1), sw); // Let uers set software params regardless of renderer used //EnableWindow(GetDlgItem(m_hWnd, IDC_SWTHREADS_EDIT), sw); diff --git a/plugins/GSdx/GSTextureOGL.cpp b/plugins/GSdx/GSTextureOGL.cpp index 300527064d..bdca672851 100644 --- a/plugins/GSdx/GSTextureOGL.cpp +++ b/plugins/GSdx/GSTextureOGL.cpp @@ -64,7 +64,7 @@ namespace PboPool { gl_GenBuffers(countof(m_pool), m_pool); m_texture_storage = GLLoader::found_GL_ARB_buffer_storage; // Code is really faster on MT driver. So far only nvidia support it - if (!(GLLoader::nvidia_buggy_driver && theApp.GetConfig("enable_nvidia_multi_thread", 1))) + if (!GLLoader::nvidia_buggy_driver) m_texture_storage &= (theApp.GetConfig("ogl_texture_storage", 0) == 1); for (size_t i = 0; i < countof(m_pool); i++) { diff --git a/plugins/GSdx/GSdx.rc b/plugins/GSdx/GSdx.rc index 565f45df5d..a466d9cc15 100644 --- a/plugins/GSdx/GSdx.rc +++ b/plugins/GSdx/GSdx.rc @@ -282,7 +282,7 @@ BEGIN COMBOBOX IDC_AFCOMBO,93,304,35,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP LTEXT "OpenCL Device:",IDC_STATIC,6,86,52,8 COMBOBOX IDC_OPENCL_DEVICE,70,84,111,118,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - CONTROL "HW OGL Depth",IDC_OLGDEPTH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,92,273,72,13 + CONTROL "HW OGL Depth",IDC_TC_DEPTH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,92,273,72,13 END diff --git a/plugins/GSdx/resource.h b/plugins/GSdx/resource.h index 6e3efef2cf..efc199e802 100644 --- a/plugins/GSdx/resource.h +++ b/plugins/GSdx/resource.h @@ -80,7 +80,7 @@ #define IDC_ALIGN_SPRITE 2096 #define IDC_CRC_LEVEL 2097 #define IDC_CHECK1 2098 -#define IDC_OLGDEPTH 2099 +#define IDC_TC_DEPTH 2099 #define IDC_COLORSPACE 3000 #define IDR_CONVERT_FX 10000 #define IDR_TFX_FX 10001