Fix T102256: Gamma Cross blend mode causes stripes
Function `do_gammacross_effect_float` processed one color channel per loop iteration instead of whole pixel.
This commit is contained in:
parent
bfc7653490
commit
cebea62b47
Notes:
blender-bot
2023-02-14 19:45:25 +01:00
Referenced by issue #102256, VSE Gamma Cross blend mode causes stripes
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue