[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [59740] trunk/blender/source/blender/nodes /shader/node_shader_util.c: Related to #36632: cycles textured draw mode now shows the image from an image
Brecht Van Lommel
brechtvanlommel at pandora.be
Mon Sep 2 18:05:51 CEST 2013
Revision: 59740
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=59740
Author: blendix
Date: 2013-09-02 16:05:51 +0000 (Mon, 02 Sep 2013)
Log Message:
-----------
Related to #36632: cycles textured draw mode now shows the image from an image
texture node even if it's not active, in case there is no active texture node.
Modified Paths:
--------------
trunk/blender/source/blender/nodes/shader/node_shader_util.c
Modified: trunk/blender/source/blender/nodes/shader/node_shader_util.c
===================================================================
--- trunk/blender/source/blender/nodes/shader/node_shader_util.c 2013-09-02 15:43:28 UTC (rev 59739)
+++ trunk/blender/source/blender/nodes/shader/node_shader_util.c 2013-09-02 16:05:51 UTC (rev 59740)
@@ -195,25 +195,28 @@
bNode *nodeGetActiveTexture(bNodeTree *ntree)
{
/* this is the node we texture paint and draw in textured draw */
- bNode *node, *tnode;
+ bNode *node, *tnode, *inactivenode = NULL;
if (!ntree)
return NULL;
- for (node = ntree->nodes.first; node; node = node->next)
+ for (node = ntree->nodes.first; node; node = node->next) {
if (node->flag & NODE_ACTIVE_TEXTURE)
return node;
+ else if (!inactivenode && node->typeinfo->nclass == NODE_CLASS_TEXTURE)
+ inactivenode = node;
+ }
/* node active texture node in this tree, look inside groups */
for (node = ntree->nodes.first; node; node = node->next) {
if (node->type == NODE_GROUP) {
tnode = nodeGetActiveTexture((bNodeTree *)node->id);
- if (tnode)
+ if (tnode && ((tnode->flag & NODE_ACTIVE_TEXTURE) || !inactivenode))
return tnode;
}
}
- return NULL;
+ return inactivenode;
}
void ntreeExecGPUNodes(bNodeTreeExec *exec, GPUMaterial *mat, int do_outputs)
More information about the Bf-blender-cvs
mailing list