summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/BPMemory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoCommon/BPMemory.cpp')
-rw-r--r--Source/Core/VideoCommon/BPMemory.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/Core/VideoCommon/BPMemory.cpp b/Source/Core/VideoCommon/BPMemory.cpp
index 26891ba941..8c0a2ec43a 100644
--- a/Source/Core/VideoCommon/BPMemory.cpp
+++ b/Source/Core/VideoCommon/BPMemory.cpp
@@ -10,6 +10,19 @@
// STATE_TO_SAVE
BPMemory bpmem;
+bool BlendMode::UseLogicOp() const
+{
+ // Logicop bit has lowest priority.
+ if (subtract || blendenable || !logicopenable)
+ return false;
+
+ // Fast path for Kirby's Return to Dreamland, they use it with dstAlpha.
+ if (logicmode == BlendMode::NOOP)
+ return false;
+
+ return true;
+}
+
float FogParam0::GetA() const
{
// scale mantissa from 11 to 23 bits