Nodes/ComfyUI-See-through/SeeThrough Generate Layers
ComfyUI Node

SeeThrough Generate Layers

The Node That Slices an Anime Character Into Transparent Layers

By jtydhr88·Created 5 months ago·Updated 6 days ago· 715
SeeThrough Generate Layers
  • image
  • layerdiff_model
  • layers
  • preview
seed42
resolution1280
num_inference_steps30

If the See-through pack has a heart, this is it. The loaders just fetch models, the depth and postprocess nodes sort and refine, but SeeThrough Generate Layers is the node where the actual machine learning happens: you feed it one anime illustration and it hands you back twenty-something semantic RGBA layers - front hair, back hair, face, irides, eyebrows, topwear, handwear, footwear, tail, wings, objects - each with real transparency, already separated.

That's the whole pitch of the See-through research project (shitagaki-lab, conditionally accepted to SIGGRAPH 2026), and it got the community's attention for an obvious reason. When it landed in April 2026, the framing on r/StableDiffusion was basically "a free way to get a riggable 2D character without paying $500+ to commission a VTuber model." What used to be days of manually cutting a character out in Photoshop becomes one graph run. One honest caveat before you get excited: the model is trained on VTuber-style anime data, so it wants a single, full-body anime character. A realistic photo in, mangled layers out. That's not a bug, that's the training distribution.

How it works. The layer model is an SDXL-based "LayerDiff" pipeline, which puts it in the direct lineage of lllyasviel's LayerDiffusion. The important consequence for you: the alpha channel is generated by the model, not matted afterward, so hair strands and semi-transparent bits keep correct edges instead of the halo-and-hard-cut you get from background removal. The node runs the image center-padded to a square, generates the body parts, then runs a second refined pass on a cropped head region to get the face/eyes/mouth detail right. None of that is your problem - your job is picking the four numbers on the left.

The inputs that actually matter:

  • image - your single illustration. Full body, clean background, anime. A busy background confuses the decomposition.
  • layerdiff_model - plug in the layerdiff_model output from SeeThrough Load LayerDiff Model.
  • seed - default 42. This is real diffusion, so same seed + same image = same layering. Lock it when you find a split you like.
  • resolution - default 1280, step of 64, 512–2048. The image is padded to this square. Higher costs a lot of VRAM and time for modest gains; 1024–1280 is the sane band.
  • num_inference_steps - default 30. More steps = slightly cleaner edges, meaningfully slower. 30 is a good stopping point.

Outputs: layers (type SEETHROUGH_LAYERS) wires straight into SeeThrough Generate Depth - that's the next node in every example workflow. preview (IMAGE) goes to a Preview Image node so you can actually see what you got before you commit to the slower downstream steps.

Installing. Via ComfyUI Manager (search "See-through") or:

cd ComfyUI/custom_nodes
git clone https://github.com/jtydhr88/ComfyUI-See-through.git
cd ComfyUI-See-through
pip install -r requirements.txt

Then restart ComfyUI and load one of the workflows/seethrough-basic.json files from the repo. First run downloads the LayerDiff model from HuggingFace (layerdifforg/seethroughv0.0.2_layerdiff3d) - that's several GB, and at 1280 resolution the run wants roughly 13–16GB VRAM. A 30-step 1280 run is on the order of a couple of minutes on a top-end card and slower from there.

Where people get burned: VRAM. If you're on 8–12GB, don't fight it here - go to the loader node and check cache_tag_embeds (saves ~2GB for free), drop resolution to 1024, and treat group_offload as the last resort because it roughly triples the run time. And if your output looks like a blob of unlabeled parts, check the console: the node prints the tag version and layer count. If it's a partial pass, you usually just need more VRAM headroom or a lower resolution, not a different workflow.

CategorySeeThrough

Inputs (5)

NameTypeDefaultDescription
imageIMAGE
layerdiff_modelSEETHROUGH_LAYERDIFF_MODEL
seedINT420–4294967295
resolutionINT1280512–2048
num_inference_stepsINT301–100

Outputs (2)

NameTypeDescription
layersSEETHROUGH_LAYERS
previewIMAGE