[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50179] trunk/blender/source/blender/ compositor: fix for bug in variable size blur compositor node - using incorrect Y blur operations and uninitialized memory was causing random blur results .
Campbell Barton
ideasman42 at gmail.com
Fri Aug 24 14:48:56 CEST 2012
Revision: 50179
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50179
Author: campbellbarton
Date: 2012-08-24 12:48:56 +0000 (Fri, 24 Aug 2012)
Log Message:
-----------
fix for bug in variable size blur compositor node - using incorrect Y blur operations and uninitialized memory was causing random blur results.
Modified Paths:
--------------
trunk/blender/source/blender/compositor/nodes/COM_BlurNode.cpp
trunk/blender/source/blender/compositor/operations/COM_BlurBaseOperation.cpp
trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp
trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp
Modified: trunk/blender/source/blender/compositor/nodes/COM_BlurNode.cpp
===================================================================
--- trunk/blender/source/blender/compositor/nodes/COM_BlurNode.cpp 2012-08-24 12:17:07 UTC (rev 50178)
+++ trunk/blender/source/blender/compositor/nodes/COM_BlurNode.cpp 2012-08-24 12:48:56 UTC (rev 50179)
@@ -74,14 +74,18 @@
operationx->setbNode(editorNode);
operationx->setQuality(quality);
operationx->setSize(1.0f);
+ operationx->setFalloff(PROP_SMOOTH);
+ operationx->setSubtract(false);
addLink(graph, clamp->getOutputSocket(), operationx->getInputSocket(0));
graph->addOperation(operationx);
- GaussianYBlurOperation *operationy = new GaussianYBlurOperation();
+ GaussianAlphaYBlurOperation *operationy = new GaussianAlphaYBlurOperation();
operationy->setData(data);
operationy->setbNode(editorNode);
operationy->setQuality(quality);
operationy->setSize(1.0f);
+ operationy->setFalloff(PROP_SMOOTH);
+ operationy->setSubtract(false);
addLink(graph, operationx->getOutputSocket(), operationy->getInputSocket(0));
graph->addOperation(operationy);
Modified: trunk/blender/source/blender/compositor/operations/COM_BlurBaseOperation.cpp
===================================================================
--- trunk/blender/source/blender/compositor/operations/COM_BlurBaseOperation.cpp 2012-08-24 12:17:07 UTC (rev 50178)
+++ trunk/blender/source/blender/compositor/operations/COM_BlurBaseOperation.cpp 2012-08-24 12:48:56 UTC (rev 50179)
@@ -121,6 +121,11 @@
val = val * val;
break;
case PROP_LIN:
+#ifndef NDEBUG
+ /* uninitialized! */
+ case -1:
+ BLI_assert(0);
+#endif
default:
/* nothing */
break;
Modified: trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp
===================================================================
--- trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp 2012-08-24 12:17:07 UTC (rev 50178)
+++ trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp 2012-08-24 12:48:56 UTC (rev 50179)
@@ -33,6 +33,7 @@
{
this->m_gausstab = NULL;
this->m_rad = 0;
+ this->m_falloff = -1; /* intentionally invalid, so we can detect uninitialized values */
}
void *GaussianAlphaXBlurOperation::initializeTileData(rcti *rect)
Modified: trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp
===================================================================
--- trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp 2012-08-24 12:17:07 UTC (rev 50178)
+++ trunk/blender/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp 2012-08-24 12:48:56 UTC (rev 50179)
@@ -33,6 +33,7 @@
{
this->m_gausstab = NULL;
this->m_rad = 0;
+ this->m_falloff = -1; /* intentionally invalid, so we can detect uninitialized values */
}
void *GaussianAlphaYBlurOperation::initializeTileData(rcti *rect)
More information about the Bf-blender-cvs
mailing list