LayerShuffler

A handy UI tool that allows user freedom when dealing with multi-layer files (or node streams). The tool has options for custom layer extractions into Shuffle nodes, custom order of extraction, adding nodes after the extraction and more!

Updated: 27 June 2018

Author: Kalogane

Compatible Nuke versions: 6.0 or later

Compatibility: Linux, Mac, Windows

IMPORTANT NOTE (IF YOU HAVE DOWNLOADED PRE-v1.2):

Please revisit the Installation Guide, specifically for the menu.py setup step. I have changed the commands text and the name of the LayerShuffler file itself. This will ensure that for future versions you will only have to replace the LayerShuffler Python file itself!

 

Changelog for the current version can be found at the bottom of the page.

 

Layer Shuffler Demo Video

vimeo screenshot


 

Layer Shuffler

main page2

 


Layer Shuffler provides the utility to review a list of identified layers in the node stream of the currently targeted node and extract each layer into Shuffle nodes. Beyond that, in the case of dealing with rendered files, it allows the separation of your Main Passes and AOV passes through two different list selections, as well as custom naming of both. It also allows you to rebuild the main passes of your render, should you desire to do so. However, this feature is currently limited to Arnold and VRay only. More rebuild options will be added in the future. A custom order for arranging the layers after the Shuffle can also be specified by the user. Nodes can be stored in a list to be added during the Shuffle process, the only restriction there being that the node has to be able to receive inputs and create outputs. A selection of an arbitrary amounts of nodes in the Node Graph can be stored as Node Tree Presets which will allow you to later respawn the same set of nodes with their knobs' settings, relative locations to each other and their connections.

This tool acts as a Nuke panel and can therefore be floated, docked to other areas, multiple instances can be spawned, etc. The UI will also locally save the options that you have last set for some elements in a Preferences file.


INSTALLATION GUIDE:

In the contents folder you'll find a 'layerShuffler' folder - copy that to your '.nuke' directory.

In your 'init.py' file in '.nuke', add the following code:

 

 nuke.pluginAddPath('./layerShuffler')

 

In 'menu.py', add the following code, but make sure the '# IMPORTS' section is in the beginning of your 'menu.py' file: 

 

# IMPORTS - these go in the beginning of your menu.py

 from nukescripts import panels

 import LayerShuffler

 

The '# REGISTRATION' section can be placed at any point after that:

 

# REGISTRATION - this goes at any point after the Imports

 

panels.registerWidgetAsPanel('LayerShuffler.LayerShuffler', 'Layer Shuffler', 'LayerShufflerPanelId')



If Nuke is opened, restart for changes to take effect. You will then find the Layer Shuffler as a Nuke panel type under the 'Custom' menu.

startup


FUTURE IMPLEMENTATIONS:

More rebuilds - Scanline, Renderman.

Future versions of the tool will attempt to improve the algorithms for Rebuilds for certain cases where the user might only want to rebuild a few of the required passes for the rebuild. Currently, the algorithms are flawed and unpredictable in that regard.


VERSION CHANGELOG (v1.3):

  • Functionality changes:

    • Added a “Saved Node Trees” tab

      • This feature allows you to save a selection of nodes in the node graph and store them to a file which can then be called upon later, to rebuild them in the Node Graph again (with their values, relative positions and connections)

  • UI changes:

    • Node Distance Slider received some improvements in usability - it will not longer snap between values when you drag the dot.

    • The UI will now save the values you input for some widgets to a “preferences” file in the directory of the LayerShuffler Python file. Those widgets include:

      • Both backdrop naming fields

      • The two lists with your layers in the Shuffler tab

      • The following checkboxes:

        • “Skip EXR Check”

        • “Shuffle selected layers only”

        • “Unlock Shuffle Ordering”

      • “Select color” button’s color value

      • The following dropdown boxes:

        • Rebuild direction

        • Renderer selection

      • Node distance slider (both the number field and slider value itself)

  • Fixes:

    • Added support for storing Group nodes in the tool. Before, it would store the node itself and its knobs, but nothing inside the Group and would therefore be respawned empty.

Full changelog can be found in the downloaded ZIP file.


Contact details:

If you have questions, feel free to contact me on . I intend to maintain and improve the tool over time so bug reports and feature suggestions are welcome, all I ask is that you give the subject line of your email a meaningful text!

Sign in or register to download or rate.