Get Image Data (Texturaizer)
Pull Blender's base, depth, normal, edge and segment render passes
- data_optional
- base
- segment active
- depth
- normal
- edge
- segment obj
- segment mat
- data_hash
This is the node that hands you Blender's multi-pass render, split into seven separate image outputs. Texturaizer's own pitch is "seamless background rendering" and "granular prompt control" driven by Blender auto-generating render passes and shipping them to ComfyUI - this node is where those passes actually land on the ComfyUI side, ready to plug into a ControlNet stack, a mask, or the base image you're transforming.
How it works
Blender renders a scene through several passes at once - the plain color render, plus geometry/utility passes that spatial-conditioning techniques like ControlNet are built to consume - and Texturaizer bundles them into one export. This node reads that bundle (from directory_optional, the addon's global directory if left blank, or an already-loaded dictionary via data_optional) and splits it into typed image outputs, one per pass, so you can wire each into whatever it's meant for without hand-parsing a dictionary yourself.
The outputs that matter
Seven image outputs, each with its own tooltip:
base- "Base image." The plain color render - your starting point, or your reference image for an image-to-image pass.segment active- "Active Segment image." A flat-color pass isolating whatever's currently the active selection in Blender.depth- "Depth pass." Feeds a depth ControlNet directly - no separate depth-estimation preprocessor node needed in ComfyUI, since Blender already knows the real depth of everything in the scene.normal- "Normal pass." Surface-direction data, for a normals ControlNet or relighting-style workflows.edge- "Edge pass." An edge map, the Blender-rendered equivalent of a canny preprocessor's output.segment obj- "Object segment image." A flat-color ID pass, one color per object - this is the kind of imageTexturaizer_CombinedConditioningFromColorsis built to read for per-object regional prompting.segment mat- "Material segment image." Same idea, one flat color per material instead of per object - useful when you want regional prompts to follow material assignment rather than object boundaries.
Plus the standard data_hash, debug-only per the tooltip.
The genuinely useful thing here is that depth, normal and edge arrive already computed by Blender, which knows the actual 3D geometry - you're not running ComfyUI-side preprocessors (MiDaS, a canny node, a normal estimator) to approximate what a 2D image estimator thinks the geometry might be. You get the ground truth for free.
Installing it
ComfyUI Manager → search Texturaizer → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/LatentSpaceDirective/ComfyUI-Texturaizer
then restart ComfyUI. No dependencies beyond the pack itself - the passes are rendered by Blender, not generated by any model on the ComfyUI side.
Where people get burned
Not every render includes every pass - if you haven't enabled a given render pass in Blender's Texturaizer settings, the corresponding output here is likely to come back empty rather than erroring loudly, so a ControlNet that "isn't doing anything" is worth tracing back to whether the pass was actually rendered before you go looking anywhere else. And the segment passes are only as useful as the color separation Blender gave them - if segment obj or segment mat end up feeding Texturaizer_CombinedConditioningFromColors, check that guide's threshold field against how distinct your object or material colors actually are, especially with a lot of small or similarly-shaded objects in one scene.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| directory_optionalopt | STRING | — | |
| data_optionalopt | DICTIONARY | [object Object] | — |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| base | IMAGE | Base image |
| segment active | IMAGE | Active Segment image |
| depth | IMAGE | Depth pass |
| normal | IMAGE | Normal pass |
| edge | IMAGE | Edge pass |
| segment obj | IMAGE | Object segment image |
| segment mat | IMAGE | Material segment image |
| data_hash | STRING | Hash value for debugging purposes. |