svn merge ^/trunk/blender -r47272:47306

This commit is contained in:
2012-06-01 05:50:17 +00:00
36 changed files with 407 additions and 1217 deletions

View File

@@ -52,7 +52,8 @@ void DilateErodeNode::convertToOperations(ExecutionSystem *graph, CompositorCont
this->getOutputSocket(0)->relinkConnections(operation->getOutputSocket(0));
}
graph->addOperation(operation);
} else if (editorNode->custom1 == CMP_NODE_DILATEERODE_DISTANCE) {
}
else if (editorNode->custom1 == CMP_NODE_DILATEERODE_DISTANCE) {
if (editorNode->custom2 > 0) {
DilateDistanceOperation * operation = new DilateDistanceOperation();
operation->setDistance(editorNode->custom2);
@@ -67,7 +68,8 @@ void DilateErodeNode::convertToOperations(ExecutionSystem *graph, CompositorCont
this->getOutputSocket(0)->relinkConnections(operation->getOutputSocket(0));
graph->addOperation(operation);
}
} else {
}
else {
if (editorNode->custom2 > 0) {
DilateStepOperation * operation = new DilateStepOperation();
operation->setIterations(editorNode->custom2);

View File

@@ -29,6 +29,7 @@
#include "COM_SetValueOperation.h"
#include "COM_MixBlendOperation.h"
#include "COM_FastGaussianBlurOperation.h"
#include "COM_GlareGhostOperation.h"
GlareNode::GlareNode(bNode *editorNode): Node(editorNode)
{
@@ -42,6 +43,30 @@ void GlareNode::convertToOperations(ExecutionSystem *system, CompositorContext *
switch (glare->type) {
default:
case 3:
{
GlareThresholdOperation *thresholdOperation = new GlareThresholdOperation();
GlareGhostOperation * glareoperation = new GlareGhostOperation();
SetValueOperation * mixvalueoperation = new SetValueOperation();
MixBlendOperation * mixoperation = new MixBlendOperation();
this->getInputSocket(0)->relinkConnections(thresholdOperation->getInputSocket(0), 0, system);
addLink(system, thresholdOperation->getOutputSocket(), glareoperation->getInputSocket(0));
addLink(system, mixvalueoperation->getOutputSocket(), mixoperation->getInputSocket(0));
addLink(system, glareoperation->getOutputSocket(), mixoperation->getInputSocket(2));
addLink(system, thresholdOperation->getInputSocket(0)->getConnection()->getFromSocket(), mixoperation->getInputSocket(1));
this->getOutputSocket()->relinkConnections(mixoperation->getOutputSocket());
thresholdOperation->setThreshold(glare->threshold);
glareoperation->setGlareSettings(glare);
mixvalueoperation->setValue(0.5f+glare->mix*0.5f);
mixoperation->setResolutionInputSocketIndex(1);
system->addOperation(glareoperation);
system->addOperation(thresholdOperation);
system->addOperation(mixvalueoperation);
system->addOperation(mixoperation);
}
case 2: // streaks
{
GlareThresholdOperation *thresholdOperation = new GlareThresholdOperation();