builder.tree
tree
Classes
| Name | Description |
|---|---|
| DirectionalContext | Base class for directional socket contexts |
| InputInterfaceContext | |
| MaterialBuilder | |
| OutputInterfaceContext | |
| PanelContext | Context manager for grouping sockets into a panel. |
| SocketContext | |
| TreeBuilder | Builder for creating Blender node trees with a clean Python API. |
DirectionalContext
DirectionalContext(tree_builder)Base class for directional socket contexts
Attributes
| Name | Description |
|---|---|
builder |
|
interface |
|
tree |
Methods
| Name | Description |
|---|---|
| boolean | |
| bundle | |
| closure | |
| collection | |
| color | |
| float | |
| geometry | |
| image | |
| integer | |
| material | |
| matrix | |
| menu | |
| object | |
| panel | Create a panel context for grouping sockets. |
| rotation | |
| shader | |
| string | |
| vector |
boolean
boolean(
name='Boolean',
default_value=False,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
layer_selection_field=False,
attribute_domain='POINT',
default_attribute=None,
is_panel_toggle=False,
)bundle
bundle(
name='Bundle',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)closure
closure(
name='Closure',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)collection
collection(
name='Collection',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)color
color(
name='Color',
default_value=(1.0, 1.0, 1.0, 1.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)float
float(
name='Value',
default_value=0.0,
description='',
*,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)geometry
geometry(
name='Geometry',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)image
image(
name='Image',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)integer
integer(
name='Integer',
default_value=0,
description='',
*,
min_value=-2147483648,
max_value=2147483647,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)material
material(
name='Material',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)matrix
matrix(
name='Matrix',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
attribute_domain='POINT',
default_attribute=None,
)object
object(
name='Object',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)panel
panel(name, *, default_closed=False)Create a panel context for grouping sockets.
rotation
rotation(
name='Rotation',
default_value=(0.0, 0.0, 0.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)shader
shader(
name='Shader',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)string
string(
name='String',
default_value='',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
subtype='NONE',
)vector
vector(
name='Vector',
default_value=(0.0, 0.0, 0.0),
description='',
*,
dimensions=3,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
default_attribute=None,
default_input='VALUE',
attribute_domain='POINT',
)InputInterfaceContext
InputInterfaceContext(tree_builder)Attributes
| Name | Description |
|---|---|
builder |
|
interface |
|
tree |
Methods
| Name | Description |
|---|---|
| boolean | |
| bundle | |
| closure | |
| collection | |
| color | |
| float | |
| geometry | |
| image | |
| integer | |
| material | |
| matrix | |
| menu | |
| object | |
| panel | Create a panel context for grouping sockets. |
| rotation | |
| shader | |
| string | |
| vector |
boolean
boolean(
name='Boolean',
default_value=False,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
layer_selection_field=False,
attribute_domain='POINT',
default_attribute=None,
is_panel_toggle=False,
)bundle
bundle(
name='Bundle',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)closure
closure(
name='Closure',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)collection
collection(
name='Collection',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)color
color(
name='Color',
default_value=(1.0, 1.0, 1.0, 1.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)float
float(
name='Value',
default_value=0.0,
description='',
*,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)geometry
geometry(
name='Geometry',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)image
image(
name='Image',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)integer
integer(
name='Integer',
default_value=0,
description='',
*,
min_value=-2147483648,
max_value=2147483647,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)material
material(
name='Material',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)matrix
matrix(
name='Matrix',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
attribute_domain='POINT',
default_attribute=None,
)object
object(
name='Object',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)panel
panel(name, *, default_closed=False)Create a panel context for grouping sockets.
rotation
rotation(
name='Rotation',
default_value=(0.0, 0.0, 0.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)shader
shader(
name='Shader',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)string
string(
name='String',
default_value='',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
subtype='NONE',
)vector
vector(
name='Vector',
default_value=(0.0, 0.0, 0.0),
description='',
*,
dimensions=3,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
default_attribute=None,
default_input='VALUE',
attribute_domain='POINT',
)MaterialBuilder
MaterialBuilder(
name='New Material',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
ignore_visibility=False,
)Attributes
| Name | Description |
|---|---|
collapse |
|
fake_user |
|
ignore_visibility |
|
inputs |
|
material |
|
nodes |
|
outputs |
|
tree |
Methods
| Name | Description |
|---|---|
| activate_tree | Make this tree the active tree for all new node creation. |
| add | |
| arrange | |
| compositor | Create a compositor node tree. |
| deactivate_tree | Whatever tree was previously active is set to be the active one (or None if no previously active tree). |
| geometry | Create a geometry node tree. |
| link | |
| shader | Create a shader node tree. |
activate_tree
activate_tree()Make this tree the active tree for all new node creation.
add
add(name)arrange
arrange()compositor
compositor(
name='Compositor Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a compositor node tree.
deactivate_tree
deactivate_tree()Whatever tree was previously active is set to be the active one (or None if no previously active tree).
geometry
geometry(
name='Geometry Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a geometry node tree.
link
link(socket1, socket2)shader
shader(
name='Shader Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a shader node tree.
OutputInterfaceContext
OutputInterfaceContext(tree_builder)Attributes
| Name | Description |
|---|---|
builder |
|
interface |
|
tree |
Methods
| Name | Description |
|---|---|
| boolean | |
| bundle | |
| closure | |
| collection | |
| color | |
| float | |
| geometry | |
| image | |
| integer | |
| material | |
| matrix | |
| menu | |
| object | |
| panel | Create a panel context for grouping sockets. |
| rotation | |
| shader | |
| string | |
| vector |
boolean
boolean(
name='Boolean',
default_value=False,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
layer_selection_field=False,
attribute_domain='POINT',
default_attribute=None,
is_panel_toggle=False,
)bundle
bundle(
name='Bundle',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)closure
closure(
name='Closure',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)collection
collection(
name='Collection',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)color
color(
name='Color',
default_value=(1.0, 1.0, 1.0, 1.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)float
float(
name='Value',
default_value=0.0,
description='',
*,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)geometry
geometry(
name='Geometry',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)image
image(
name='Image',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)integer
integer(
name='Integer',
default_value=0,
description='',
*,
min_value=-2147483648,
max_value=2147483647,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)material
material(
name='Material',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)matrix
matrix(
name='Matrix',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
attribute_domain='POINT',
default_attribute=None,
)object
object(
name='Object',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)panel
panel(name, *, default_closed=False)Create a panel context for grouping sockets.
rotation
rotation(
name='Rotation',
default_value=(0.0, 0.0, 0.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)shader
shader(
name='Shader',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)string
string(
name='String',
default_value='',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
subtype='NONE',
)vector
vector(
name='Vector',
default_value=(0.0, 0.0, 0.0),
description='',
*,
dimensions=3,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
default_attribute=None,
default_input='VALUE',
attribute_domain='POINT',
)PanelContext
PanelContext(socket_context, name, *, default_closed=False)Context manager for grouping sockets into a panel.
SocketContext
SocketContext(tree_builder)Attributes
| Name | Description |
|---|---|
builder |
|
interface |
|
tree |
Methods
| Name | Description |
|---|---|
| boolean | |
| bundle | |
| closure | |
| collection | |
| color | |
| float | |
| geometry | |
| image | |
| integer | |
| material | |
| matrix | |
| menu | |
| object | |
| panel | Create a panel context for grouping sockets. |
| rotation | |
| shader | |
| string | |
| vector |
boolean
boolean(
name='Boolean',
default_value=False,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
layer_selection_field=False,
attribute_domain='POINT',
default_attribute=None,
is_panel_toggle=False,
)bundle
bundle(
name='Bundle',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)closure
closure(
name='Closure',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)collection
collection(
name='Collection',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)color
color(
name='Color',
default_value=(1.0, 1.0, 1.0, 1.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)float
float(
name='Value',
default_value=0.0,
description='',
*,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)geometry
geometry(
name='Geometry',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)image
image(
name='Image',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)integer
integer(
name='Integer',
default_value=0,
description='',
*,
min_value=-2147483648,
max_value=2147483647,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
subtype='NONE',
attribute_domain='POINT',
default_attribute=None,
)material
material(
name='Material',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)matrix
matrix(
name='Matrix',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
default_input='VALUE',
attribute_domain='POINT',
default_attribute=None,
)object
object(
name='Object',
default_value=None,
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)panel
panel(name, *, default_closed=False)Create a panel context for grouping sockets.
rotation
rotation(
name='Rotation',
default_value=(0.0, 0.0, 0.0),
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
attribute_domain='POINT',
default_attribute=None,
)shader
shader(
name='Shader',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
)string
string(
name='String',
default_value='',
description='',
*,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
subtype='NONE',
)vector
vector(
name='Vector',
default_value=(0.0, 0.0, 0.0),
description='',
*,
dimensions=3,
min_value=None,
max_value=None,
optional_label=False,
hide_value=False,
hide_in_modifier=False,
structure_type='AUTO',
subtype='NONE',
default_attribute=None,
default_input='VALUE',
attribute_domain='POINT',
)TreeBuilder
TreeBuilder(
tree='Geometry Nodes',
*,
tree_type='GeometryNodeTree',
collapse=False,
arrange='sugiyama',
fake_user=False,
ignore_visibility=False,
)Builder for creating Blender node trees with a clean Python API.
Supports geometry, shader, and compositor node trees.
Attributes
| Name | Description |
|---|---|
collapse |
|
fake_user |
|
ignore_visibility |
|
inputs |
|
nodes |
|
outputs |
|
tree |
Methods
| Name | Description |
|---|---|
| activate_tree | Make this tree the active tree for all new node creation. |
| add | |
| arrange | |
| compositor | Create a compositor node tree. |
| deactivate_tree | Whatever tree was previously active is set to be the active one (or None if no previously active tree). |
| geometry | Create a geometry node tree. |
| link | |
| shader | Create a shader node tree. |
activate_tree
activate_tree()Make this tree the active tree for all new node creation.
add
add(name)arrange
arrange()compositor
compositor(
name='Compositor Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a compositor node tree.
deactivate_tree
deactivate_tree()Whatever tree was previously active is set to be the active one (or None if no previously active tree).
geometry
geometry(
name='Geometry Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a geometry node tree.
link
link(socket1, socket2)shader
shader(
name='Shader Nodes',
*,
collapse=False,
arrange='sugiyama',
fake_user=False,
)Create a shader node tree.