Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Toenne <lukas.toenne@googlemail.com>2012-04-16 17:49:33 +0400
committerLukas Toenne <lukas.toenne@googlemail.com>2012-04-16 17:49:33 +0400
commitf4498e62a78e80e0db0a6d398f8b956827dddca5 (patch)
treebe8962ba2d97bf1158e6a406bea9d3343cce4024 /source/blender/nodes/composite/node_composite_tree.c
parent37a79f47272ddd0cf5702ae0a73c2c39ef192ad4 (diff)
Dynamic output sockets for the image input node. This is needed to enable the node to read arbitrary multilayer exr files. Output sockets of this node are now generated dynamically when the image is updated. The image buffer has to be loaded to detect multilayer files on update.
Diffstat (limited to 'source/blender/nodes/composite/node_composite_tree.c')
-rw-r--r--source/blender/nodes/composite/node_composite_tree.c24
1 files changed, 6 insertions, 18 deletions
diff --git a/source/blender/nodes/composite/node_composite_tree.c b/source/blender/nodes/composite/node_composite_tree.c
index 7bd0d03322d..049b5dd8178 100644
--- a/source/blender/nodes/composite/node_composite_tree.c
+++ b/source/blender/nodes/composite/node_composite_tree.c
@@ -757,26 +757,14 @@ void ntreeCompositForceHidden(bNodeTree *ntree, Scene *curscene)
if (srl)
force_hidden_passes(node, srl->passflag);
}
+ /* XXX this stuff is called all the time, don't want that.
+ * Updates should only happen when actually necessary.
+ */
+ #if 0
else if ( node->type==CMP_NODE_IMAGE) {
- Image *ima= (Image *)node->id;
- if (ima) {
- if (ima->rr) {
- ImageUser *iuser= node->storage;
- RenderLayer *rl= BLI_findlink(&ima->rr->layers, iuser->layer);
- if (rl)
- force_hidden_passes(node, rl->passflag);
- else
- force_hidden_passes(node, RRES_OUT_IMAGE|RRES_OUT_ALPHA);
- }
- else if (ima->type!=IMA_TYPE_MULTILAYER) { /* if ->rr not yet read we keep inputs */
- force_hidden_passes(node, RRES_OUT_IMAGE|RRES_OUT_ALPHA|RRES_OUT_Z);
- }
- else
- force_hidden_passes(node, RRES_OUT_IMAGE|RRES_OUT_ALPHA);
- }
- else
- force_hidden_passes(node, RRES_OUT_IMAGE|RRES_OUT_ALPHA);
+ nodeUpdate(ntree, node);
}
+ #endif
}
}