Nodes/ComfyUI-WanVideoWrapper/(Download)Load NLF Model
ComfyUI Node Runs on cloud

(Download)Load NLF Model

The 3D pose estimator behind Wan Animate

By kijai·Created about a year ago·Updated 2 months ago· 6,651
(Download)Load NLF Model
    • nlf_model
    urlhttps://github.com/isarandi/nlf/releases/download/v0.3.2/nlf_l_multi_0.3.2.torchscript
    warmuptrue

    This node loads NLF - Neural Localizer Fields, a 3D human pose and body-mesh model by István Sárándi - and it's a preprocessing dependency for the Wan Animate pipeline. It exists so that when you feed Animate a driving video, something can extract a proper 3D read of the person's body: joints, orientation, depth. That 3D signal is what makes character motion transfer look like a real body moving rather than a flat pose overlay.

    It's a "download and load" node, which is the convenient kind - point it at the release URL and it fetches the weights the first time, then loads them on subsequent runs. No manual model hunting.

    How it works

    Traditional pose control for video uses 2D skeletons (DWPose/OpenPose), which throw away depth and contact information before the model ever sees it. NLF estimates a richer 3D localization of the body instead. In an Animate workflow, you run the driving footage through NLF to produce the body-motion signal that ultimately feeds WanVideoAnimateEmbeds. The node handles fetching the TorchScript model and preparing it for inference.

    The inputs and outputs that matter

    • url - the NLF release to download, picked from a short list (the node defaults to the nlf_l_multi_0.3.2 TorchScript build from the model's GitHub releases, with an older 0.2.2 as the alternative). The default is the one to use unless you're matching an older workflow.
    • warmup (optional, default true) - runs a warm-up pass so the first real inference isn't paying the JIT/initialization cost. Leave it on; it just makes the first frame quicker.

    Output is a single NLFMODEL, which you route into the pose-preprocessing part of your Animate graph.

    How to install it

    Comes with the pack. Via ComfyUI Manager: search WanVideo Wrapper, install, restart. Manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/kijai/ComfyUI-WanVideoWrapper
    pip install -r ComfyUI-WanVideoWrapper/requirements.txt
    

    then restart. The NLF weights themselves are auto-downloaded on first use from the isarandi/nlf GitHub releases, so the first run will pause to fetch them - that's normal.

    Common issues & troubleshooting

    First run hangs or "does nothing." It's downloading the model. The weights come from a GitHub release the first time you run the node; give it a minute and watch the console. If it fails, it's usually a network/proxy issue reaching GitHub, not the node.

    You don't know why you'd need this. You need it if you're building a Wan Animate workflow that drives motion from a video - NLF is the 3D-pose front end. If you're not doing Animate/motion-transfer, this node isn't part of your graph.

    Version mismatch with an existing workflow. If you loaded a shared Animate workflow that expects the older 0.2.2 build, select that URL rather than the 0.3.2 default, or you may see incompatibilities in what the downstream nodes expect.

    Pose read looks wrong on unusual footage. 3D body estimation struggles with heavy occlusion, extreme crops, or multiple overlapping people. Cleaner, well-framed driving footage produces a cleaner pose signal - garbage in, garbage out applies to the driver just as much as to the reference.

    CategoryWanVideoWrapper

    Inputs (2)

    NameTypeDefaultDescription
    urlCOMBOhttps://github.com/isarandi/nlf/releases/download/v0.3.2/nlf_l_multi_0.3.2.torchscript2 options: https://github.com/isarandi/nlf/releases/download/v0.3.2/nlf_l_multi_0.3.2.torchscript, https://github.com/isarandi/nlf/releases/download/v0.2.2/nlf_l_multi_0.2.2.torchscript
    warmupoptBOOLEANtrueWhether to warmup the model after loading

    Outputs (1)

    NameTypeDescription
    nlf_modelNLFMODEL