Fix for
* [#32356] Problem with "Ghost" in the "Glare" Node in Compositor
This commit is contained in:
@@ -83,11 +83,11 @@ void GlareGhostOperation::generateGlare(float *data, MemoryBuffer *inputTile, No
|
||||
for (x = 0; x < gbuf->getWidth(); x++) {
|
||||
u = (float)(x + 0.5f) / (float)gbuf->getWidth();
|
||||
s = (u - 0.5f) * sc + 0.5f, t = (v - 0.5f) * sc + 0.5f;
|
||||
tbuf1->read(c, s * gbuf->getWidth(), t * gbuf->getHeight());
|
||||
tbuf1->readCubic(c, s * gbuf->getWidth(), t * gbuf->getHeight());
|
||||
sm = smoothMask(s, t);
|
||||
mul_v3_fl(c, sm);
|
||||
s = (u - 0.5f) * isc + 0.5f, t = (v - 0.5f) * isc + 0.5f;
|
||||
tbuf2->read(tc, s * gbuf->getWidth() - 0.5f, t * gbuf->getHeight() - 0.5f);
|
||||
tbuf2->readCubic(tc, s * gbuf->getWidth() - 0.5f, t * gbuf->getHeight() - 0.5f);
|
||||
sm = smoothMask(s, t);
|
||||
madd_v3_v3fl(c, tc, sm);
|
||||
|
||||
@@ -108,7 +108,7 @@ void GlareGhostOperation::generateGlare(float *data, MemoryBuffer *inputTile, No
|
||||
np = (n << 2) + p;
|
||||
s = (u - 0.5f) * scalef[np] + 0.5f;
|
||||
t = (v - 0.5f) * scalef[np] + 0.5f;
|
||||
gbuf->read(c, s * gbuf->getWidth() - 0.5f, t * gbuf->getHeight() - 0.5f);
|
||||
gbuf->readCubic(c, s * gbuf->getWidth() - 0.5f, t * gbuf->getHeight() - 0.5f);
|
||||
mul_v3_v3(c, cm[np]);
|
||||
sm = smoothMask(s, t) * 0.25f;
|
||||
madd_v3_v3fl(tc, c, sm);
|
||||
|
||||
Reference in New Issue
Block a user