[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48244] trunk/blender/source/blender/ compositor/nodes/COM_KeyingNode.cpp: Skip edge matte operation creation if output socket is not connected.
Sergey Sharybin
sergey.vfx at gmail.com
Sun Jun 24 19:38:21 CEST 2012
Revision: 48244
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48244
Author: nazgul
Date: 2012-06-24 17:38:14 +0000 (Sun, 24 Jun 2012)
Log Message:
-----------
Skip edge matte operation creation if output socket is not connected.
Modified Paths:
--------------
trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp
Modified: trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp
===================================================================
--- trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp 2012-06-24 16:19:19 UTC (rev 48243)
+++ trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp 2012-06-24 17:38:14 UTC (rev 48244)
@@ -161,7 +161,7 @@
OutputSocket *outputImage = this->getOutputSocket(0);
OutputSocket *outputMatte = this->getOutputSocket(1);
OutputSocket *outputEdges = this->getOutputSocket(2);
- OutputSocket *postprocessedMatte, *postprocessedImage, *originalImage, *edgesMatte;
+ OutputSocket *postprocessedMatte = NULL, *postprocessedImage = NULL, *originalImage = NULL, *edgesMatte = NULL;
bNode *editorNode = this->getbNode();
NodeKeyingData *keying_data = (NodeKeyingData *) editorNode->storage;
@@ -195,9 +195,11 @@
keying_data->clip_black, keying_data->clip_white, false);
}
- edgesMatte = setupClip(graph, postprocessedMatte,
- keying_data->edge_kernel_radius, keying_data->edge_kernel_tolerance,
- keying_data->clip_black, keying_data->clip_white, true);
+ if (outputEdges->isConnected()) {
+ edgesMatte = setupClip(graph, postprocessedMatte,
+ keying_data->edge_kernel_radius, keying_data->edge_kernel_tolerance,
+ keying_data->clip_black, keying_data->clip_white, true);
+ }
/* apply blur on matte if needed */
if (keying_data->blur_post)
@@ -225,7 +227,9 @@
/* connect result to output sockets */
outputImage->relinkConnections(postprocessedImage);
outputMatte->relinkConnections(postprocessedMatte);
- outputEdges->relinkConnections(edgesMatte);
+ if (edgesMatte)
+ outputEdges->relinkConnections(edgesMatte);
+
graph->addOperation(alphaOperation);
}
More information about the Bf-blender-cvs
mailing list