Use SDXL? (Texturaizer)
A tiny boolean that rescues your graph from checkpoint roulette
- data_optional
- use sdxl
- data_hash
Some nodes exist to move heavy data around. Use SDXL? (Texturaizer) exists to move a single boolean. It reads the version_select field from the Blender export and tells you, plainly, whether that scene was set up for SDXL - and while it sounds too trivial to matter, it's the kind of node that keeps a multi-model pipeline honest when you start mixing SD 1.5 and SDXL objects in one project.
Context, quickly: Texturaizer is a paid Blender addon by Luke Kratsios (LatentSpaceDirective) that exports per-object data to ComfyUI. These nodes - free and open-source - read that exported JSON. This one is the slimmest of the Get * Data family.
What it does
Two outputs:
use sdxl(BOOLEAN) -truewhen the scene'sversion_selectequals'SDXL',falseotherwise.data_hash(STRING) - the change-detection hash.
That's it. No model loading, no inference. Under the hood it's the standard read-ai_data.json pattern (from directory_optional or the Set Global Dir fallback), with IS_CHANGED hashing the boolean so the graph re-runs when the version flips.
Why you'd bother
Two real uses, neither of which is "I love extra nodes."
First, checkpoint routing. SD 1.5 and SDXL are different enough - different CLIP, different latent sizes, different recommended CFG - that a graph built for one produces garbage on the other. If your Texturaizer project mixes both (a common setup when some objects use a lighter 1.5 model for speed and the hero object gets full SDXL), use sdxl is the perfect key for a Switch Smart or Switch Any: true routes to the SDXL checkpoint and 1024-ish latent, false routes to the 1.5 branch. One scene property, one switch, no manual re-plumbing.
Second, conditioning structure. SDXL wants two text encoders (its base + refiner clip), SD 1.5 wants one. Feed use sdxl into a switch that picks the right CLIP Text Encode setup. It's the same pattern either way - the boolean is just the traffic cop.
Install and the honest caveat
Install is pack-level:
cd ComfyUI/custom_nodes
git clone https://github.com/LatentSpaceDirective/ComfyUI-Texturaizer
or search "Texturaizer" in ComfyUI Manager and restart. No extra dependencies, no models.
The caveat: this node is only as useful as your willingness to wire its output. On its own it's a boolean in a box, and if you never route anything off it, it's dead weight - don't add it to a graph "just in case." The payoff shows up the moment you build a dual-architecture scene and realize you can switch the whole sampling stack off one value that Blender already knows. For a quick smoke test, remember you can feed a hand-made DICTIONARY ({"scene_info": {"version_select": "SDXL"}}) into data_optional and watch the boolean flip without touching Blender.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| directory_optionalopt | STRING | — | |
| data_optionalopt | DICTIONARY | [object Object] | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| use sdxl | BOOLEAN | Texturaizer JSON data. |
| data_hash | STRING | Hash value for debugging purposes. |