i've noticed an unexpected behavior in quartz composer - tell me if
i'm imagining things:
when i connect two patch networks to a multiplexer - and then feed
that into a billboard - composer "knows" to only evaluate only the
one network which contributes to the final result.
but if i put that multiplexer into a macro (simply by publishing
all it's inputs and outputs) then composer does NOT "know" to only
evaluate one network. it evaluates both.
Good catch! There's actually a performance issue. Looking at the
engine implementation, it's simply because when the macro patch is
executed, all its inputs are evaluated first, and then the macro
patch inside is executed. The macro patch does not know some of its
inputs actually come from a multiplexer and it's not necessary to
execute them all.