Two pass execution:

1. first pass only fast nodes are calculated and only to the active
viewer node
2. second pass all nodes to all outputs

Temp disabled highlights because of random crashes.
This commit is contained in:
2012-07-04 11:39:28 +00:00
parent 33e12a2983
commit 778999cbbf
13 changed files with 65 additions and 16 deletions

View File

@@ -117,7 +117,7 @@
#include "COM_ViewerNode.h"
#include "COM_ZCombineNode.h"
Node *Converter::convert(bNode *b_node)
Node *Converter::convert(bNode *b_node, bool fast)
{
Node *node;
@@ -125,6 +125,22 @@ Node *Converter::convert(bNode *b_node)
node = new MuteNode(b_node);
return node;
}
if (fast) {
if (b_node->type == CMP_NODE_BLUR ||
b_node->type == CMP_NODE_VECBLUR ||
b_node->type == CMP_NODE_BILATERALBLUR ||
b_node->type == CMP_NODE_DEFOCUS ||
b_node->type == CMP_NODE_BOKEHBLUR ||
b_node->type == CMP_NODE_GLARE ||
b_node->type == CMP_NODE_DBLUR ||
b_node->type == CMP_NODE_MOVIEDISTORTION ||
b_node->type == CMP_NODE_LENSDIST ||
b_node->type == CMP_NODE_DOUBLEEDGEMASK ||
b_node->type == CMP_NODE_DILATEERODE)
{
return new MuteNode(b_node);
}
}
switch (b_node->type) {
case CMP_NODE_COMPOSITE: