File: ScreenshotNodes.py
Purpose: Capture high-quality screenshots of a node tree (entire tree or only selected nodes), auto-stitched from multiple tiles using OpenImageIO.
Key features
- Whole-tree or selection capture:
- Screenshot the entire active node tree.
- Or only the currently selected nodes.
- Tilized capture & stitching:
- Uses a modal timer to pan the node editor and capture tiles.
- Tiles are stitched into a single high-resolution image via OpenImageIO.
- Automatic cropping & styling:
- Temporarily adjusts theme settings (grid, scrollbars, wire color, selection color) for clean output.
- Restores user theme and view settings afterwards.
- Configurable save location & color:
- Defaults to a
NodesShotssubfolder next to the.blendfile. - Fallback/secondary directory configurable in add-on preferences.
- Custom Node Outline Color for selected/active nodes in the screenshot.
- Defaults to a
UI location
- Context Menu in the Node Editor:
- Right-click in the Node Editor →
PrintNodesmenu:- Take Screenshot Of Whole Tree
- Take Screenshot Of Selected Nodes
- Right-click in the Node Editor →
- Preferences:
Edit→Preferences→Add-ons→ find ScreenshotNodes to configure:- Secondary Directory
- Always Use Secondary Directory
- Node Outline Color
Basic usage
- Open the desired node editor (Shader, Geometry, etc.) and set up your node tree.
- Optionally select a subset of nodes if you only want a partial screenshot.
- Right-click in the node editor and choose:
- Take Screenshot Of Whole Tree, or
- Take Screenshot Of Selected Nodes.
- Wait for the modal capture to finish (you can cancel with Right Mouse or
Esc). - The stitched screenshot is saved as
NodeTreeShotYYMMDD-HHMMSS.jpgin:- The
NodesShotsfolder next to your blend file, or - The secondary directory specified in add-on preferences.
- The