diff --git a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.cpp b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.cpp index 84149928e2..6c84fd518f 100644 --- a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.cpp +++ b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.cpp @@ -35,8 +35,6 @@ std::string D3D12FragmentDecompiler::getFunction(enum class FUNCTION f) { default: abort(); - case FUNCTION::FUNCTION_SATURATE: - return "saturate"; case FUNCTION::FUNCTION_DP2: return "dot($0.xy, $1.xy).xxxx"; case FUNCTION::FUNCTION_DP2A: @@ -72,6 +70,11 @@ std::string D3D12FragmentDecompiler::getFunction(enum class FUNCTION f) } } +std::string D3D12FragmentDecompiler::saturate(const std::string & code) +{ + return "saturate(" + code + ")"; +} + void D3D12FragmentDecompiler::insertHeader(std::stringstream & OS) { OS << "// Header" << std::endl; diff --git a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h index a32a2654f2..69aeb93181 100644 --- a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h +++ b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h @@ -10,6 +10,7 @@ class D3D12FragmentDecompiler : public FragmentProgramDecompiler protected: virtual std::string getFloatTypeName(size_t elementCount) override; virtual std::string getFunction(enum class FUNCTION) override; + virtual std::string saturate(const std::string &code) override; virtual void insertHeader(std::stringstream &OS) override; virtual void insertIntputs(std::stringstream &OS) override;