From 9d3104fe9606ba0abd80b914ed690e6c5a5da4c4 Mon Sep 17 00:00:00 2001 From: miku-666 <74728189+NessieHax@users.noreply.github.com> Date: Sun, 9 Apr 2023 19:20:12 +0200 Subject: [PATCH] Added 'BlendMode.Screen' --- PCK-Studio/Classes/Extensions/BlendMode.cs | 3 ++- PCK-Studio/Classes/Extensions/ImageExtensions.cs | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/PCK-Studio/Classes/Extensions/BlendMode.cs b/PCK-Studio/Classes/Extensions/BlendMode.cs index 96cfc36e..7fb02709 100644 --- a/PCK-Studio/Classes/Extensions/BlendMode.cs +++ b/PCK-Studio/Classes/Extensions/BlendMode.cs @@ -7,6 +7,7 @@ Multiply, Average, DescendingOrder, - AscendingOrder + AscendingOrder, + Screen } } \ No newline at end of file diff --git a/PCK-Studio/Classes/Extensions/ImageExtensions.cs b/PCK-Studio/Classes/Extensions/ImageExtensions.cs index 180ff5dc..ee800247 100644 --- a/PCK-Studio/Classes/Extensions/ImageExtensions.cs +++ b/PCK-Studio/Classes/Extensions/ImageExtensions.cs @@ -201,6 +201,7 @@ namespace PckStudio.Extensions BlendMode.Average => (source + overlay) / 2.0f, BlendMode.AscendingOrder => source > overlay ? overlay : source, BlendMode.DescendingOrder => source < overlay ? overlay : source, + BlendMode.Screen => 1f - (1f - source)*(1f - overlay), _ => 0.0f }; return (byte)Clamp(resultValue * 255, 0, 255);