diff options
Diffstat (limited to 'Source/Core/VideoCommon/GraphicsModSystem/Config')
| -rw-r--r-- | Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.cpp | 10 | ||||
| -rw-r--r-- | Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.h | 9 |
2 files changed, 17 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.cpp b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.cpp index 07f00624e4..374b138571 100644 --- a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.cpp +++ b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.cpp @@ -187,6 +187,16 @@ std::optional<GraphicsTargetConfig> DeserializeTargetFromConfig(const picojson:: target.m_texture_info_string = texture_info.value(); return target; } + else if (type == "create_texture") + { + std::optional<std::string> texture_info = ExtractTextureFilenameForConfig(obj); + if (!texture_info.has_value()) + return std::nullopt; + + CreateTextureTarget target; + target.m_texture_info_string = texture_info.value(); + return target; + } else if (type == "efb") { return DeserializeFBTargetFromConfig<EFBTarget>(obj, EFB_DUMP_PREFIX); diff --git a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.h b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.h index 67a349e78f..bde445258c 100644 --- a/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.h +++ b/Source/Core/VideoCommon/GraphicsModSystem/Config/GraphicsTarget.h @@ -26,6 +26,10 @@ struct LoadTextureTarget final : public TextureTarget { }; +struct CreateTextureTarget final : public TextureTarget +{ +}; + struct FBTarget { u32 m_height = 0; @@ -47,8 +51,9 @@ struct ProjectionTarget ProjectionType m_projection_type = ProjectionType::Perspective; }; -using GraphicsTargetConfig = std::variant<DrawStartedTextureTarget, LoadTextureTarget, EFBTarget, - XFBTarget, ProjectionTarget>; +using GraphicsTargetConfig = + std::variant<DrawStartedTextureTarget, LoadTextureTarget, CreateTextureTarget, EFBTarget, + XFBTarget, ProjectionTarget>; std::optional<GraphicsTargetConfig> DeserializeTargetFromConfig(const picojson::object& obj); |
