Nodes/BetterNormalCrafterWrapper/NormalCrafter - Generate Normals
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.

By kaski23·Created 3 months ago·Updated 6 days ago· 0
NormalCrafter - Generate Normals
  • model
  • images
  • normal_maps
◄max_resolution1024►
◄window_size14►
◄step_size10►
◄chunk_size7►
CategoryNormalCrafter

Inputs (6)

NameTypeDefaultDescription
modelNORMALCRAFTER_MODELNormalCrafter model bundle from the NormalCrafter - Load node.
imagesIMAGEInput image batch or video frames in temporal order. The output contains one normal map per input frame.
max_resolutionINT1024256–2048Maximum 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_sizeINT142–64Number 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_sizeINT101–64How 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_sizeINT71–64Batch 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)

NameTypeDescription
normal_mapsIMAGEPer-frame RGB normal maps in ComfyUI IMAGE format, restored to the input resolution.