GafferHQ / gaffer

Gaffer is a node-based application for lookdev, lighting and automation
http://www.gafferhq.org
BSD 3-Clause "New" or "Revised" License
961 stars 207 forks source link

"Shortcuts" for predefined plug connection menus #849

Closed davidsminor closed 9 years ago

davidsminor commented 10 years ago

quoting John on #92 :

" But if you actually want to share graphs of Filter nodes (rather than sets), then this ticket isn't about that at all. @thiasbxl actually had a related request when building shader networks - he was finding that he had a number of texture nodes which were common to a lot of his networks and wanted a quick way of plugging them in at various locations in his graph, without having to navigate a large graph to find them, and without having connections sprawled across his graph once the connection was made.

I wonder if it would be possible to address both requirements with some sort of "Bookmarks" or "Shortcuts" concept. You would take all the useful nodes you wanted, and either plug them in to a Shortcuts node, or place them in a special box. They would then become available directly in menus for all compatible plugs in the NodeEditor and NodeGraph. So you could put together a little collection of these useful nodes, publish them, and then have quick access for plugging them into various parts of the graph. Does that sound like it might do what you want? "

I think this'd also have a possible application for defining default filters for things like the ShaderAssignment, which people seem to prefer being path filtered on "/*" by default

louisdaniel commented 10 years ago

I made this little mockup to explain visually an hybrid approach idea between using preset filters being inherited globally (reading first the show/globalFilter.gfr then the sequence/globalFilter.gfr ?). The preset filters would be accessible transparently in a node through the filter tab. This would not create physical nodes in the top-level network. Users needing custom filters, would be creating physical pathfilters nodes and/or importing sets nodes.

modgraph_filters modgraph_filters_base modgraph_filters_new1

davidsminor commented 10 years ago

That thing with "has match unrelated checked on inside": you could just make a match unrelated node and connect it to a global show filter couldn't you?

louisdaniel commented 10 years ago

Having an "invert" match checkbox inside appears to me as a more direct robust way to extend the filtering possibilities of existing filters. This removes the need to create an Invert version of all the global filters and extend in the same time the listing length of the existing presets with their invert counterpart. Similar to when you plug in a mask in modern compositing packages, you can invert the input.