diff options
Diffstat (limited to 'source/blender')
7 files changed, 34 insertions, 55 deletions
diff --git a/source/blender/compositor/operations/COM_BokehBlurOperation.cpp b/source/blender/compositor/operations/COM_BokehBlurOperation.cpp index a8f97c6906e..e2fce504791 100644 --- a/source/blender/compositor/operations/COM_BokehBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_BokehBlurOperation.cpp @@ -73,7 +73,7 @@ void BokehBlurOperation::initExecution() void BokehBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data) { - float tempColor[4]; + float color_accum[4]; float tempBoundingBox[4]; float bokeh[4]; @@ -96,7 +96,7 @@ void BokehBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer * maxy = min(maxy, inputBuffer->getRect()->ymax); maxx = min(maxx, inputBuffer->getRect()->xmax); - zero_v4(tempColor); + zero_v4(color_accum); int step = getStep(); int offsetadd = getOffsetAdd(); @@ -108,15 +108,15 @@ void BokehBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer * float u = this->bokehMidX - (nx - x) * m; float v = this->bokehMidY - (ny - y) * m; inputBokehProgram->read(bokeh, u, v, COM_PS_NEAREST, inputBuffers); - madd_v4_v4v4(tempColor, bokeh, &buffer[bufferindex]); + madd_v4_v4v4(color_accum, bokeh, &buffer[bufferindex]); add_v4_v4(multiplier_accum, bokeh); bufferindex += offsetadd; } } - color[0] = tempColor[0] * (1.0f / multiplier_accum[0]); - color[1] = tempColor[1] * (1.0f / multiplier_accum[1]); - color[2] = tempColor[2] * (1.0f / multiplier_accum[2]); - color[3] = tempColor[3] * (1.0f / multiplier_accum[3]); + color[0] = color_accum[0] * (1.0f / multiplier_accum[0]); + color[1] = color_accum[1] * (1.0f / multiplier_accum[1]); + color[2] = color_accum[2] * (1.0f / multiplier_accum[2]); + color[3] = color_accum[3] * (1.0f / multiplier_accum[3]); } else { inputProgram->read(color, x, y, COM_PS_NEAREST, inputBuffers); diff --git a/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp index 12ebfbe1562..10b651a4f05 100644 --- a/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp @@ -110,7 +110,7 @@ void GaussianAlphaXBlurOperation::executePixel(float *color, int x, int y, Memor int bufferindex = ((minx - bufferstartx) * 4) + ((miny - bufferstarty) * 4 * bufferwidth); /* gauss */ - float tempColor = 0.0f; + float alpha_accum = 0.0f; float multiplier_accum = 0.0f; /* dilate */ @@ -125,30 +125,25 @@ void GaussianAlphaXBlurOperation::executePixel(float *color, int x, int y, Memor /* gauss */ { multiplier = gausstab[index]; - tempColor += value * multiplier; + alpha_accum += value * multiplier; multiplier_accum += multiplier; } /* dilate - find most extreme color */ if (value > value_max) { -#if 0 - multiplier = 1.0f - ((fabsf(x - nx)) / (float)this->rad); -#else multiplier = distbuf_inv[index]; -#endif value *= multiplier; if (value > value_max) { value_max = value; distfacinv_max = multiplier; } } - bufferindex += offsetadd; } /* blend between the max value and gauss blue - gives nice feather */ - const float value_gauss = tempColor / multiplier_accum; - const float value_final = (value_max * distfacinv_max) + (value_gauss * (1.0f - distfacinv_max)); + const float value_blur = alpha_accum / multiplier_accum; + const float value_final = (value_max * distfacinv_max) + (value_blur * (1.0f - distfacinv_max)); color[0] = finv_test(value_final, do_invert); } diff --git a/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp index 66cd2652b62..cc854c96cf5 100644 --- a/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp @@ -106,7 +106,7 @@ void GaussianAlphaYBlurOperation::executePixel(float *color, int x, int y, Memor int step = getStep(); /* gauss */ - float tempColor = 0.0f; + float alpha_accum = 0.0f; float multiplier_accum = 0.0f; /* dilate */ @@ -123,17 +123,13 @@ void GaussianAlphaYBlurOperation::executePixel(float *color, int x, int y, Memor /* gauss */ { multiplier = gausstab[index]; - tempColor += value * multiplier; + alpha_accum += value * multiplier; multiplier_accum += multiplier; } /* dilate - find most extreme color */ if (value > value_max) { -#if 0 - multiplier = 1.0f - ((fabsf(y - ny)) / (float)this->rad); -#else multiplier = distbuf_inv[index]; -#endif value *= multiplier; if (value > value_max) { value_max = value; @@ -144,8 +140,8 @@ void GaussianAlphaYBlurOperation::executePixel(float *color, int x, int y, Memor } /* blend between the max value and gauss blue - gives nice feather */ - const float value_gauss = tempColor / multiplier_accum; - const float value_final = (value_max * distfacinv_max) + (value_gauss * (1.0f - distfacinv_max)); + const float value_blur = alpha_accum / multiplier_accum; + const float value_final = (value_max * distfacinv_max) + (value_blur * (1.0f - distfacinv_max)); color[0] = finv_test(value_final, do_invert); } diff --git a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp index fcb2ea0d3ee..7a1964a4a63 100644 --- a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp @@ -72,11 +72,7 @@ void GaussianXBlurOperation::updateGauss(MemoryBuffer **memoryBuffers) void GaussianXBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data) { - float tempColor[4]; - tempColor[0] = 0; - tempColor[1] = 0; - tempColor[2] = 0; - tempColor[3] = 0; + float color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; float *buffer = inputBuffer->getBuffer(); @@ -100,11 +96,11 @@ void GaussianXBlurOperation::executePixel(float *color, int x, int y, MemoryBuff for (int nx = minx; nx < maxx; nx += step) { index = (nx - x) + this->rad; const float multiplier = gausstab[index]; - madd_v4_v4fl(tempColor, &buffer[bufferindex], multiplier); + madd_v4_v4fl(color_accum, &buffer[bufferindex], multiplier); multiplier_accum += multiplier; bufferindex += offsetadd; } - mul_v4_v4fl(color, tempColor, 1.0f / multiplier_accum); + mul_v4_v4fl(color, color_accum, 1.0f / multiplier_accum); } void GaussianXBlurOperation::deinitExecution() diff --git a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp index 4b4268b581a..06c1c78d85a 100644 --- a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp @@ -69,12 +69,8 @@ void GaussianYBlurOperation::updateGauss(MemoryBuffer **memoryBuffers) void GaussianYBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data) { - float tempColor[4]; - tempColor[0] = 0; - tempColor[1] = 0; - tempColor[2] = 0; - tempColor[3] = 0; - float multiplier_accum = 0; + float color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; + float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; float *buffer = inputBuffer->getBuffer(); int bufferwidth = inputBuffer->getWidth(); @@ -96,10 +92,10 @@ void GaussianYBlurOperation::executePixel(float *color, int x, int y, MemoryBuff index = (ny - y) + this->rad; int bufferindex = ((minx - bufferstartx) * 4) + ((ny - bufferstarty) * 4 * bufferwidth); const float multiplier = gausstab[index]; - madd_v4_v4fl(tempColor, &buffer[bufferindex], multiplier); + madd_v4_v4fl(color_accum, &buffer[bufferindex], multiplier); multiplier_accum += multiplier; } - mul_v4_v4fl(color, tempColor, 1.0f / multiplier_accum); + mul_v4_v4fl(color, color_accum, 1.0f / multiplier_accum); } void GaussianYBlurOperation::deinitExecution() diff --git a/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp b/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp index db51e27c460..b3cc5ece3b8 100644 --- a/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp @@ -53,15 +53,11 @@ void VariableSizeBokehBlurOperation::initExecution() void VariableSizeBokehBlurOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data) { - float tempColor[4]; float readColor[4]; float bokeh[4]; - tempColor[0] = 0; - tempColor[1] = 0; - tempColor[2] = 0; - tempColor[3] = 0; float tempSize[4]; float multiplier_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; + float color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; int miny = y - maxBlur; int maxy = y + maxBlur; @@ -69,11 +65,11 @@ void VariableSizeBokehBlurOperation::executePixel(float *color, int x, int y, Me int maxx = x + maxBlur; { inputProgram->read(readColor, x, y, COM_PS_NEAREST, inputBuffers); - tempColor[0] += readColor[0]; - tempColor[1] += readColor[1]; - tempColor[2] += readColor[2]; - tempColor[3] += readColor[3]; - add_v4_v4(tempColor, readColor); + color_accum[0] += readColor[0]; + color_accum[1] += readColor[1]; + color_accum[2] += readColor[2]; + color_accum[3] += readColor[3]; + add_v4_v4(color_accum, readColor); add_v3_fl(multiplier_accum, 1.0f); for (int ny = miny; ny < maxy; ny += QualityStepHelper::getStep()) { @@ -92,17 +88,17 @@ void VariableSizeBokehBlurOperation::executePixel(float *color, int x, int y, Me float v = 256 + dy * 256 / size; inputBokehProgram->read(bokeh, u, v, COM_PS_NEAREST, inputBuffers); inputProgram->read(readColor, nx, ny, COM_PS_NEAREST, inputBuffers); - madd_v4_v4v4(tempColor, bokeh, readColor); + madd_v4_v4v4(color_accum, bokeh, readColor); add_v4_v4(multiplier_accum, bokeh); } } } } - color[0] = tempColor[0] * (1.0f / multiplier_accum[0]); - color[1] = tempColor[1] * (1.0f / multiplier_accum[1]); - color[2] = tempColor[2] * (1.0f / multiplier_accum[2]); - color[3] = tempColor[3] * (1.0f / multiplier_accum[3]); + color[0] = color_accum[0] * (1.0f / multiplier_accum[0]); + color[1] = color_accum[1] * (1.0f / multiplier_accum[1]); + color[2] = color_accum[2] * (1.0f / multiplier_accum[2]); + color[3] = color_accum[3] * (1.0f / multiplier_accum[3]); } } diff --git a/source/blender/editors/animation/anim_filter.c b/source/blender/editors/animation/anim_filter.c index 752e458ef78..46e1eb98dae 100644 --- a/source/blender/editors/animation/anim_filter.c +++ b/source/blender/editors/animation/anim_filter.c @@ -183,7 +183,7 @@ static short actedit_get_context(bAnimContext *ac, SpaceAction *saction) //MovieClip *clip = ac->scene->clip; // struct Mask *mask = seq ? seq->mask : NULL; - saction->ads.source = (ID *)ac->scene;; + saction->ads.source = (ID *)ac->scene; ac->datatype = ANIMCONT_MASK; ac->data = &saction->ads; |