diff --git a/Source/Core/VideoUICommon/Src/VideoConfigDiag.cpp b/Source/Core/VideoUICommon/Src/VideoConfigDiag.cpp index 4f50fe4053..60aaa6b397 100644 --- a/Source/Core/VideoUICommon/Src/VideoConfigDiag.cpp +++ b/Source/Core/VideoUICommon/Src/VideoConfigDiag.cpp @@ -143,24 +143,21 @@ VideoConfigDiag::VideoConfigDiag(wxWindow* parent, const std::string &title, con szr_enh->Add(text_aamode, 1, wxALIGN_CENTER_VERTICAL, 0); SettingChoice* const choice_aamode = new SettingChoice(page_general, vconfig.iMultisampleMode); - if (vconfig.backend_info.AAModes.size()) + std::vector::const_iterator + it = vconfig.backend_info.AAModes.begin(), + itend = vconfig.backend_info.AAModes.end(); + for (; it != itend; ++it) + choice_aamode->AppendString(wxString::FromAscii(it->c_str())); + + if (vconfig.backend_info.AAModes.size() <= 1) { - std::vector::const_iterator - it = vconfig.backend_info.AAModes.begin(), - itend = vconfig.backend_info.AAModes.end(); - for (; it != itend; ++it) - choice_aamode->AppendString(wxString::FromAscii(it->c_str())); - } - else - { - choice_aamode->AppendString(wxString::FromAscii("(not supported)")); - vconfig.iMultisampleMode = 0; choice_aamode->Disable(); text_aamode->Disable(); } + choice_aamode->Select(vconfig.iMultisampleMode); szr_enh->Add(choice_aamode); - + szr_enh->Add(new SettingCheckBox(page_general, wxT("Load Native Mipmaps"), vconfig.bUseNativeMips)); szr_enh->Add(new SettingCheckBox(page_general, wxT("EFB Scaled Copy"), vconfig.bCopyEFBScaled)); diff --git a/Source/Plugins/Plugin_VideoDX11/Src/D3DBase.cpp b/Source/Plugins/Plugin_VideoDX11/Src/D3DBase.cpp index f693f4b48d..fd83308a67 100644 --- a/Source/Plugins/Plugin_VideoDX11/Src/D3DBase.cpp +++ b/Source/Plugins/Plugin_VideoDX11/Src/D3DBase.cpp @@ -169,6 +169,10 @@ void EnumAAModes(IDXGIAdapter* adapter, std::vector& aa_modes) HRESULT hr = PD3D11CreateDevice(adapter, D3D_DRIVER_TYPE_UNKNOWN, NULL, D3D11_CREATE_DEVICE_SINGLETHREADED, supported_feature_levels, NUM_SUPPORTED_FEATURE_LEVELS, D3D11_SDK_VERSION, &device, &feat_level, &context); if (FAILED(hr) || feat_level == D3D_FEATURE_LEVEL_10_0) { + DXGI_SAMPLE_DESC desc; + desc.Count = 1; + desc.Quality = 0; + aa_modes.push_back(desc); SAFE_RELEASE(context); SAFE_RELEASE(device); return; @@ -241,7 +245,7 @@ HRESULT Create(HWND wnd) // get supported AA modes aa_modes.clear(); EnumAAModes(adapter, aa_modes); - if (g_Config.iMultisampleMode >= aa_modes.size()) + if (g_Config.iMultisampleMode >= (int)aa_modes.size()) { g_Config.iMultisampleMode = 0; UpdateActiveConfig(); diff --git a/Source/Plugins/Plugin_VideoDX11/Src/FramebufferManager.cpp b/Source/Plugins/Plugin_VideoDX11/Src/FramebufferManager.cpp index ca2c16d431..a4bb5a5087 100644 --- a/Source/Plugins/Plugin_VideoDX11/Src/FramebufferManager.cpp +++ b/Source/Plugins/Plugin_VideoDX11/Src/FramebufferManager.cpp @@ -126,6 +126,11 @@ FramebufferManager::FramebufferManager() D3D::SetDebugObjectName((ID3D11DeviceChild*)m_efb.resolved_depth_tex->GetTex(), "EFB depth resolve texture"); D3D::SetDebugObjectName((ID3D11DeviceChild*)m_efb.resolved_depth_tex->GetSRV(), "EFB depth resolve texture shader resource view"); } + else + { + m_efb.resolved_color_tex = NULL; + m_efb.resolved_depth_tex = NULL; + } } FramebufferManager::~FramebufferManager()