From 6eacb5791df99f9204d0a478698158ef994d3e1d Mon Sep 17 00:00:00 2001 From: Jeroen Bakker Date: Fri, 13 Jul 2012 12:50:10 +0000 Subject: Inner loop optimization of blur node --- .../blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp') diff --git a/source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp index d3c4ad96df0..93cc39849a2 100644 --- a/source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp @@ -138,8 +138,10 @@ void GaussianBokehBlurOperation::executePixel(float *color, int x, int y, void * int index; int step = QualityStepHelper::getStep(); int offsetadd = QualityStepHelper::getOffsetAdd(); + const int addConst = (minx - x + this->m_radx); + const int mulConst = (this->m_radx * 2 + 1); for (int ny = miny; ny < maxy; ny += step) { - index = ((ny - y) + this->m_rady) * (this->m_radx * 2 + 1) + (minx - x + this->m_radx); + index = ((ny - y) + this->m_rady) * mulConst + addConst; int bufferindex = ((minx - bufferstartx) * 4) + ((ny - bufferstarty) * 4 * bufferwidth); for (int nx = minx; nx < maxx; nx += step) { const float multiplier = this->m_gausstab[index]; -- cgit v1.2.3