diff options
author | John Quillan <jquillan> | 2019-02-21 15:26:22 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-02-21 15:29:13 +0300 |
commit | fdee84fd567a5bb87ee5c4ec0abfd8c79aed4801 (patch) | |
tree | f030483d5dd6c894db3a53110f81a9e286455a8c /source/blender/blenkernel/intern/seqeffects.c | |
parent | 6e9dca221403ed841c16674ad725e046053b1c8d (diff) |
Fix T61733: wrong alpha for sequencer screen, multiply, .. blend modes.
It was copying the alpha from the foreground instead of background image,
which is not usually what is needed and inconsistent with the compositor.
Differential Revision: https://developer.blender.org/D4371
Diffstat (limited to 'source/blender/blenkernel/intern/seqeffects.c')
-rw-r--r-- | source/blender/blenkernel/intern/seqeffects.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/source/blender/blenkernel/intern/seqeffects.c b/source/blender/blenkernel/intern/seqeffects.c index 788935b12e6..57480006439 100644 --- a/source/blender/blenkernel/intern/seqeffects.c +++ b/source/blender/blenkernel/intern/seqeffects.c @@ -1318,11 +1318,11 @@ BLI_INLINE void apply_blend_function_byte( rt = out; while (y--) { for (x = xo; x > 0; x--) { - achannel = rt2[3]; - rt2[3] = (unsigned int) achannel * facf0; + achannel = rt1[3]; + rt1[3] = (unsigned int) achannel * facf0; blend_function(rt, rt1, rt2); - rt2[3] = achannel; - rt[3] = rt2[3]; + rt1[3] = achannel; + rt[3] = rt1[3]; rt1 += 4; rt2 += 4; rt += 4; @@ -1332,11 +1332,11 @@ BLI_INLINE void apply_blend_function_byte( } y--; for (x = xo; x > 0; x--) { - achannel = rt2[3]; - rt2[3] = (unsigned int) achannel * facf1; + achannel = rt1[3]; + rt1[3] = (unsigned int) achannel * facf1; blend_function(rt, rt1, rt2); - rt2[3] = achannel; - rt[3] = rt2[3]; + rt1[3] = achannel; + rt[3] = rt1[3]; rt1 += 4; rt2 += 4; rt += 4; @@ -1357,11 +1357,11 @@ BLI_INLINE void apply_blend_function_float( rt = out; while (y--) { for (x = xo; x > 0; x--) { - achannel = rt2[3]; - rt2[3] = achannel * facf0; + achannel = rt1[3]; + rt1[3] = achannel * facf0; blend_function(rt, rt1, rt2); - rt2[3] = achannel; - rt[3] = rt2[3]; + rt1[3] = achannel; + rt[3] = rt1[3]; rt1 += 4; rt2 += 4; rt += 4; @@ -1371,11 +1371,11 @@ BLI_INLINE void apply_blend_function_float( } y--; for (x = xo; x > 0; x--) { - achannel = rt2[3]; - rt2[3] = achannel * facf1; + achannel = rt1[3]; + rt1[3] = achannel * facf1; blend_function(rt, rt1, rt2); - rt2[3] = achannel; - rt[3] = rt2[3]; + rt1[3] = achannel; + rt[3] = rt1[3]; rt1 += 4; rt2 += 4; rt += 4; |