[Bf-committers] Proposition about muting nodes
Bastien Montagne
montagne29 at wanadoo.fr
Sat Jun 11 16:51:27 CEST 2011
Hi everybody
Here is a proposition of nodes enhancement, inspired by that bug report:
http://projects.blender.org/tracker/index.php?func=detail&aid=27636
In fact, it turned out that only compositing nodes effectively support
muting currently – that functionality hasn’t been implemented for other
types.
Moreover, imho the idea of a « generic » muting system (currently, it
just links the first rgba in to first rgba out, first value in to first
value out, and first vec in to first vec out) is not a good idea – I
think letting each node decide how it should be muted/bypassed is a much
better solution…
So here is my proposition :
Add to nodes (i.e. bNode struct) a new func pointer, called e.g.
get_muted_connections, which would return a table mapping output sockets
to input ones.
That func would be called by drawnode code (node_draw_mute_line), and by
node execution code (either each execfunc, or higher in the exec
process ?), and then some semi-generic code (placed eg in
CMP/SHD/TEX_util) could handle the copying of relevant buffers…
Note that I propose a func for muting, based on the idea that some nodes
might have different muting scheme, depending on their settings.
However, we could have an even simpler system, by hard-coding the muting
connections during node definition (similarly to how input/output are
already defined).
Anyway, this is a relatively important work, involving changes
(additions) to the core node system, so I obviously will wait for your
advices (and the greenlight of at least one core dev :) ) !
PS : In the move, I could also try to see if
http://projects.blender.org/tracker/index.php?func=detail&aid=27626
(muting inside groups) could also work well…
Cheers,
Bastien
More information about the Bf-committers
mailing list