EnhancementsWidget: Handle gaps in AA mode list

Mesa (llvmpipe) only reports 4x MSAA, and doesn't report 2x (or 1x, but we implicitly add that). The old logic did not handle this correctly, causing selecting 4x to fail and fall back to None.

This also removes VideoUtils::GetAvailableAntialiasingModes, and thus VideoUtils entirely, as its only other function was removed in 1f74653501.
This commit is contained in:
Pokechu22
2023-04-09 23:15:41 -07:00
parent b246a634d4
commit ac48b2eea4
5 changed files with 28 additions and 81 deletions

View File

@ -23,8 +23,6 @@ add_library(uicommon
UICommon.h
USBUtils.cpp
USBUtils.h
VideoUtils.cpp
VideoUtils.h
)
target_link_libraries(uicommon

View File

@ -1,43 +0,0 @@
// Copyright 2017 Dolphin Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
#include "UICommon/VideoUtils.h"
#include "Common/Assert.h"
#include "VideoCommon/VideoConfig.h"
namespace VideoUtils
{
std::vector<std::string> GetAvailableAntialiasingModes(int& msaa_modes)
{
std::vector<std::string> modes;
const auto& aa_modes = g_Config.backend_info.AAModes;
const bool supports_ssaa = g_Config.backend_info.bSupportsSSAA;
msaa_modes = 0;
for (const auto mode : aa_modes)
{
if (mode == 1)
{
modes.push_back("None");
ASSERT_MSG(VIDEO, !supports_ssaa || msaa_modes == 0, "SSAA setting won't work correctly");
}
else
{
modes.push_back(std::to_string(mode) + "x MSAA");
msaa_modes++;
}
}
if (supports_ssaa)
{
for (const auto mode : aa_modes)
{
if (mode != 1)
modes.push_back(std::to_string(mode) + "x SSAA");
}
}
return modes;
}
} // namespace VideoUtils

View File

@ -1,12 +0,0 @@
// Copyright 2017 Dolphin Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include <string>
#include <vector>
namespace VideoUtils
{
std::vector<std::string> GetAvailableAntialiasingModes(int& m_msaa_modes);
} // namespace VideoUtils