[Bf-committers] Compositor nodes-rerouting
matt at mke3.net
Wed Aug 31 10:15:41 CEST 2011
Not too keen on how the wires get 'pinched' though, I can imagine that
getting annoying. It would probably be better if it tried to keep the
beziers tangent and smooth between the incoming and outgoing wires.
I think the points themselves (and the arrows) are too big, but that's easy
to change. Also would be good to have the 'selected node wire highlight'
follow all the way from node to node, not just stopping when it hits the
reroute point. Another note, better to test this, get sizes right etc with
lots of nodes and zoomed right out. No production scenes have just 4 nodes
in them, there will be several, and you need to zoom out ot see them all, so
it would be good to know if it's awkward when used in that context or not.
In response to Daniel, I think a modifier key is ok, it depends what other
future candidates there could be for a modifier-less click/drag on a wire
itself (eg. dragging on a wire to pull it out of a socket and/or plugging
into a new one)
On Wed, Aug 31, 2011 at 5:49 PM, j.bakker at atmind.nl <j.bakker at atmind.nl>wrote:
> Hi all,
> I want to discuss this proposal. Many people have requested it, but I want
> to be sure if it is satisfying, or that there are other things that can be
> I have limited the proposal to the Compositor tree, but it could be done
> for other tree's.
> ===== Proposal =====
> This proposal is a UI enhancement on the node editor to allow better
> workflow with large node systems.
> ==== Noodle line ====
> By using MouseClick-SHIFT on a noodle a point will appear. The user can
> positioned this point (Reroute point).
> This point can attach noodles at North, South, East, West
> An arrow will be drawn on noodles between two reroute points
> If noodles reach a certain length, an arrow will be drawn. This way users
> can see the direction of the line.
> Every point can have multiple outputs. Eg you can add multiple points this
> way if you can connect the Combined socket of the renderlayer to other
> nodes in a structured way.
> Current patch is limited to the compositor node tree.
> ===== Impact =====
> ==== DNA ====
> There is a new NODE_FLAG and SOCK_FLAG called NODE_REROUTE and
> SOCK_REROUTE. telling the UI that it need to draw differently.
> ==== UI ====
> The point is a special node, "RerouteNode". All nodetree will have one. it
> will be in a new submenu named "Helper" in the add node menu. This sub-menu
> will not be visible on screen.
> === Operators ===
> a new operation will be added where the user can click on a line holding a
> certain key and this will add a RoutingNode in that position.
> === drawnode.c ===
> For the RoutingNode a new function is introduced to draw the node.
> When drawing bNodeLink that is connected to a routingnode a different
> algorithm will be used for drawing the bezier.
> If the distance traveled on the x-axis is longer than the y-axis the link
> will be connected to the east or west of the node. If the y-axis is longer
> it will be the north of south.
> When it is connected to the north of source, the bezier will be adjusted to
> draw it correctly.
> When a line will be between two reroute nodes, an arrow will be draw on the
> line. This way the user know where the line is heading to.
> ==== nodes/???_ ====
> All node types will get a RerouteNode. currently only the compositor will
> get one.
> A rerouting node contains one input socket and one output socket and uses
> pass buffer to pass the data to the next node
> mail2web - Check your email from the web at
> Bf-committers mailing list
> Bf-committers at blender.org
More information about the Bf-committers