[Bf-blender-cvs] [cebea62b477] blender-v3.4-release: Fix T102256: Gamma Cross blend mode causes stripes
Richard Antalik
noreply at git.blender.org
Wed Nov 9 22:03:27 CET 2022
Commit: cebea62b4770295ae35d98e1e9e85a457bc05922
Author: Richard Antalik
Date: Wed Nov 9 21:59:33 2022 +0100
Branches: blender-v3.4-release
https://developer.blender.org/rBcebea62b4770295ae35d98e1e9e85a457bc05922
Fix T102256: Gamma Cross blend mode causes stripes
Function `do_gammacross_effect_float` processed one color channel per
loop iteration instead of whole pixel.
===================================================================
M source/blender/sequencer/intern/effects.c
===================================================================
diff --git a/source/blender/sequencer/intern/effects.c b/source/blender/sequencer/intern/effects.c
index 8469876ba25..6dd75031f3b 100644
--- a/source/blender/sequencer/intern/effects.c
+++ b/source/blender/sequencer/intern/effects.c
@@ -704,10 +704,13 @@ static void do_gammacross_effect_float(
for (int i = 0; i < y; i++) {
for (int j = 0; j < x; j++) {
- *rt = gammaCorrect(mfac * invGammaCorrect(*rt1) + fac * invGammaCorrect(*rt2));
- rt1++;
- rt2++;
- rt++;
+ rt[0] = gammaCorrect(mfac * invGammaCorrect(rt1[0]) + fac * invGammaCorrect(rt2[0]));
+ rt[1] = gammaCorrect(mfac * invGammaCorrect(rt1[1]) + fac * invGammaCorrect(rt2[1]));
+ rt[2] = gammaCorrect(mfac * invGammaCorrect(rt1[2]) + fac * invGammaCorrect(rt2[2]));
+ rt[3] = gammaCorrect(mfac * invGammaCorrect(rt1[3]) + fac * invGammaCorrect(rt2[3]));
+ rt1 += 4;
+ rt2+=4;
+ rt+=4;
}
}
}
More information about the Bf-blender-cvs
mailing list