diff options
author | Stefan Werner <stewreo@gmail.com> | 2017-04-20 23:41:26 +0300 |
---|---|---|
committer | Stefan Werner <stewreo@gmail.com> | 2017-04-20 23:41:26 +0300 |
commit | aeda1a16f3e40b01da9afd573f1811a5212bdf34 (patch) | |
tree | 31358c34d205cd7d4927d81a6b66083b45a7c1db /source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp | |
parent | b628f765b09154fcdc9b58496e1c59c03b729e50 (diff) |
D2607: Switch eye dropper to use linear color space internally
This switches the internal color representation of the eye dropper from display space to linear. Any time a linear color is requested and the color is picked from a linear object, the result is now precise to the bit as the color gets patched through directly. Color space conversion now only happens when a color is picked from non-linear display space objects or when the color is requested to be returned in non-linear space.
In addition, this patch changes the DifferenceMatte node to interpret a tolerance of 0.0 to accept colors that are identical bit by bit, as apposed to simply refusing all colors.
Diffstat (limited to 'source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp')
-rw-r--r-- | source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp b/source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp index 325ef83a529..aa58c0571cf 100644 --- a/source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp +++ b/source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp @@ -65,11 +65,11 @@ void DifferenceMatteOperation::executePixelSampled(float output[4], float x, flo difference = difference / 3.0f; /* make 100% transparent */ - if (difference < tolerance) { + if (difference <= tolerance) { output[0] = 0.0f; } /*in the falloff region, make partially transparent */ - else if (difference < falloff + tolerance) { + else if (difference <= falloff + tolerance) { difference = difference - tolerance; alpha = difference / falloff; /*only change if more transparent than before */ |