summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2026-04-03 13:38:04 -0400
committerGitHub <noreply@github.com>2026-04-03 13:38:04 -0400
commit798f581c38acfbd9196ba4884cfb9dfd6ef85684 (patch)
tree3421446055c78b54837f5d51372c3611fc65eebb /Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp
parentd3b89b4c39a312b52546c3604379b3f51ec3c876 (diff)
parent306daff51728d71efa833dfaa5b32b3693178874 (diff)
Merge pull request #14140 from iwubcode/blurry_bloom
VideoCommon: add a graphics mod feature to modify EFBs with a custom material, enhance bloom
Diffstat (limited to 'Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp')
-rw-r--r--Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp22
1 files changed, 16 insertions, 6 deletions
diff --git a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp
index e3cf5b9a10..c0fa1f82ca 100644
--- a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp
+++ b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsModGroup.cpp
@@ -10,6 +10,7 @@
#include <picojson.h>
#include "Common/CommonPaths.h"
+#include "Common/FileSearch.h"
#include "Common/FileUtil.h"
#include "Common/JsonUtil.h"
#include "Common/Logging/Log.h"
@@ -84,13 +85,22 @@ void GraphicsModGroupConfig::Load()
const auto try_add_mod = [&known_paths, this](const std::string& dir,
GraphicsModConfig::Source source) {
- auto file = dir + DIR_SEP + "metadata.json";
- UnifyPathSeparators(file);
- if (known_paths.contains(file))
- return;
+ const auto files = Common::DoFileSearch(dir, ".json", true);
+ for (const auto& file : files)
+ {
+ std::string basename;
+ SplitPath(file, nullptr, &basename, nullptr);
+ if (basename == "metadata")
+ {
+ auto file_copy = file;
+ UnifyPathSeparators(file_copy);
+ if (known_paths.contains(file_copy))
+ return;
- if (auto mod = GraphicsModConfig::Create(file, source))
- m_graphics_mods.push_back(std::move(*mod));
+ if (auto mod = GraphicsModConfig::Create(file_copy, source))
+ m_graphics_mods.push_back(std::move(*mod));
+ }
+ }
};
const std::set<std::string> graphics_mod_user_directories =