ComfyUI Node
NormalCrafter - Generate Normals
Runs NormalCrafter in four stages: CLIP encode, VAE encode, temporal UNet inference and VAE decode. Full-video intermediates stay on CPU and only the active component/chunk/window is moved to the inference device.
NormalCrafter - Generate Normals
- model
- images
- normal_maps
◄max_resolution1024►
◄window_size14►
◄step_size10►
◄chunk_size7►
CategoryNormalCrafter
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model | NORMALCRAFTER_MODEL | NormalCrafter model bundle from the NormalCrafter - Load node. | |
| images | IMAGE | Input image batch or video frames in temporal order. The output contains one normal map per input frame. | |
| max_resolution | INT | 1024256–2048 | Maximum length of the input's longest side during inference. Images are never enlarged. Lower values reduce VRAM use and increase speed, at the cost of spatial detail. Output is resized back to the original input resolution. |
| window_size | INT | 142–64 | Number of consecutive frames processed by the temporal UNet at once. Larger windows provide more temporal context but use more VRAM. NormalCrafter's released default is 14. |
| step_size | INT | 101–64 | How many frames the temporal window advances each pass. Must be <= window_size. Smaller values create more overlap and usually smoother temporal blending, but require more UNet passes. With window_size 14, the released default is 10 (4-frame regular overlap). |
| chunk_size | INT | 71–64 | Batch size used for CLIP encoding, VAE encoding and VAE decoding. Lower values reduce peak VRAM; higher values can improve throughput if enough VRAM is available. This does not change the temporal UNet window size. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| normal_maps | IMAGE | Per-frame RGB normal maps in ComfyUI IMAGE format, restored to the input resolution. |