Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/composite/node_composite_tree.cc
| Show First 20 Lines • Show All 243 Lines • ▼ Show 20 Lines | void ntreeCompositUpdateRLayers(bNodeTree *ntree) | ||||
| LISTBASE_FOREACH (bNode *, node, &ntree->nodes) { | LISTBASE_FOREACH (bNode *, node, &ntree->nodes) { | ||||
| if (node->type == CMP_NODE_R_LAYERS) { | if (node->type == CMP_NODE_R_LAYERS) { | ||||
| node_cmp_rlayers_outputs(ntree, node); | node_cmp_rlayers_outputs(ntree, node); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| void ntreeCompositRegisterPass(bNodeTree *ntree, | |||||
| Scene *scene, | |||||
| ViewLayer *view_layer, | |||||
| const char *name, | |||||
| eNodeSocketDatatype type) | |||||
| { | |||||
| if (ntree == nullptr) { | |||||
| return; | |||||
| } | |||||
| LISTBASE_FOREACH (bNode *, node, &ntree->nodes) { | |||||
| if (node->type == CMP_NODE_R_LAYERS) { | |||||
| node_cmp_rlayers_register_pass(ntree, node, scene, view_layer, name, type); | |||||
| } | |||||
| } | |||||
| } | |||||
| void ntreeCompositTagRender(Scene *scene) | void ntreeCompositTagRender(Scene *scene) | ||||
| { | { | ||||
| /* XXX Think using G_MAIN here is valid, since you want to update current file's scene nodes, | /* XXX Think using G_MAIN here is valid, since you want to update current file's scene nodes, | ||||
| * not the ones in temp main generated for rendering? | * not the ones in temp main generated for rendering? | ||||
| * This is still rather weak though, | * This is still rather weak though, | ||||
| * ideally render struct would store own main AND original G_MAIN. */ | * ideally render struct would store own main AND original G_MAIN. */ | ||||
| for (Scene *sce_iter = (Scene *)G_MAIN->scenes.first; sce_iter; | for (Scene *sce_iter = (Scene *)G_MAIN->scenes.first; sce_iter; | ||||
| Show All 29 Lines | |||||