Function reference
Interface
| builder.tree | |
| builder.socket | Typed Python wrappers around Blender node sockets. |
| builder.node | |
| builder.accessor | |
| TreeBuilder | Builder for creating Blender node trees with a clean Python API. |
| builder.BaseNode | Base class for all node wrappers. |
Arrangement
Automatic node layout and its options.
| arrange | Arrange the nodes of a tree. |
| SugiyamaOptions | Options for the Sugiyama (layered) arrangement. |
| SimpleOptions | Options for the simple column-based arrangement. |
| default_split_inputs | Scope in which every TreeBuilder left at its default |
| default_sugiyama_options | Scope in which arrange(tree, "sugiyama") — and therefore every |
Assets
Generating classes from pre-build assets
| assets.generate_asset_api | Generate typed asset classes for libraries into output_path. |
| assets.generate_asset_modules | Generate typed asset classes for libraries, split into one module per |
| assets.dump_library | Dump every node-group and material asset in blend_path to Python |
| assets.build_library | Rebuild a .blend asset library from sources written by |
| assets.plot_library | Render node groups from blend_path to PNG images under |
| assets.AssetLibrary | Locates a .blend asset library on disk at runtime. |
| assets.BundledLibrary | A node-group asset library shipped with Blender itself, under the system |
| assets.PackageLibrary | A .blend shipped inside a Python package, located relative to a module |
Export
Exporting node trees to code.
| export.to_python | Generate Python code that recreates the given node tree using nodebpy. |
| export.to_mermaid | Generate a Mermaid diagram string from a node tree. |
| export.to_plot | Draw a node tree to an image file, Blender-style. |
| export.serialize_library | tree_clipper JSON data for each tree in trees (nested groups |
| export.compare_libraries | Differences between two :func:serialize_library captures. |
Live
Re-running source safely in a live session.
| live.run_source | Execute nodebpy source for a live re-run. |
| live.RunResult | What :func:run_source produced. |
| live.preserve_modifier_inputs | Keep Geometry Nodes modifier input values across an interface rebuild. |
| live.stash_groups | Rename each existing bpy.data.node_groups[name] to "<name>.stale" |
| live.GroupStash | Existing node groups renamed out of the way before a run. |
| live.group_names_in_source | Literal _name values assigned in class bodies of code. |
Geometry Nodes
Nodes use in Geometry Nodes trees.
Shader Nodes
Nodes use in Material / Shader node trees
Compositor Nodes
Nodes for use in the compositor