Wan Animate 2 character swap, step by step

How to copy motion, expressions and lip movement from a driving video onto your own AI character with Wan Animate 2 in ComfyUI. Files, settings, prompts and the product trick.

· 5 min read

Image to video is great when you can describe the motion in a sentence. But some things are hard to describe: someone talking to the camera with natural hand gestures, a little dance, a product being shown off at just the right angle. For those you want a driving video. You perform the motion (or generate it), and the model moves your character the same way.

That is what Wan Animate 2 does. This guide walks through a full character swap in ComfyUI with the settings used in workflow 04 of the AI Character Kit. On an RTX 3090 Ti, a 5 second swap takes about 3 minutes.

What makes Wan Animate 2 different from the first version?

The original Wan 2.2 Animate needed pose and face preprocessing. You ran the driving video through skeleton and face detectors first, then fed those maps to the model. It worked, but it was fiddly and the preprocessing nodes broke often.

Wan Animate 2 reads the raw driving video frames directly. There is no pose extraction and no face crop step. You give it:

  • A reference image: who the character is.
  • A driving video: what motion to copy.
  • A text prompt: what the character looks like and what the background should be.

The output background follows your prompt, not the reference image or the driver. That is useful: you can film yourself in a messy room and get your character in a bright studio.

The nodes are built into current ComfyUI, so update first. Models are on the official Comfy-Org Wan Animate 2 page.

Which files do you need?

File Folder Size
wan_animate_2_int8_convrot.safetensors diffusion_models about 15.5 GB
lightx2v_I2V_14B_480p_cfg_step_distill_rank64_bf16.safetensors loras about 0.7 GB
umt5_xxl_fp8_e4m3fn_scaled.safetensors text_encoders about 6.3 GB
clip_vision_h.safetensors clip_vision about 1.2 GB
Wan2_1_VAE_bf16.safetensors vae about 0.25 GB

If you already run Wan 2.2 image to video, you have the text encoder. Plan for about 22 GB of new disk on top. The int8 model plus the LightX2V distill LoRA is what makes this practical on a 24 GB card.

Step 1: How do you prepare the character image?

The character image decides identity, so treat it like the base image for any consistent character:

  • Face clear and fairly large in the frame
  • Similar framing to the driver: waist up for a waist-up driver, full body for full body
  • Even, soft light
  • Anything she holds must already be in the image

That last point matters more than anything else in this workflow, and we come back to it below. If you need to make the image first, how to keep the same face without LoRA training covers the base image method.

Save it as character.png in ComfyUI/input/.

Step 2: Where does the driving video come from?

You have three honest options:

  1. Film yourself. A phone on a shelf is enough. Talk, gesture, hold up a product.
  2. Use footage you own or have rights to.
  3. Generate a driver. Make a second fictional person with an image model, then animate them with Wan 2.2 image to video. The driver in our product demo was made this way.

What you should not do is download a creator’s TikTok and swap your character into it. That breaks copyright, and it can break publicity laws too, because you are reusing a real person’s performance without permission.

For first tests, trim the driver to 5 seconds at 16 fps. Longer clips work; the workflow processes them in chunks, so they just take longer. Clear face, good light and a steady camera all help. Save it as drive.mp4 in the input folder.

Step 3: What settings does the workflow use?

Setting Value
Model Wan Animate 2 int8
LoRA LightX2V I2V 14B 480p distill, strength 1
Size 480 x 848 portrait
Frames per chunk 81
Steps 6
Sampler lcm
Scheduler simple
CFG 1
ModelSamplingSD3 shift 5

These are low step, low CFG settings because of the distill LoRA. Raising CFG with this LoRA gives burnt colours, and more steps mostly add time.

Step 4: How do you write the prompts?

There are two text inputs.

The character prompt describes looks only: who she is, what she wears, what she holds, and the background. No motion words here.

Character Description: a 22-year-old Korean woman with long straight black hair
tied half-up with a red ribbon, wearing a traditional hanbok with a pastel pink
jeogori jacket, white ribbon and deep red skirt, holding a giant pink BERRY GLOW
strawberry mask tub

The action prompt is a short description of the motion in the driver:

A woman talking to the camera while holding up a giant tub of strawberry face
mask, expressive face and hand gestures, handheld phone video

Seo-yeon and BERRY GLOW are fictional, made for the kit’s samples.

Step 5: Run it and check the result

Press Run. The workflow saves the swap and a side by side comparison with the driver, which makes it easy to spot problems.

Why does the product vanish or turn into a blob?

Wan Animate copies motion, not objects. If your character image has empty hands, the model sees the driver’s hands holding something, and has to invent it. It usually fails. The fix has three parts:

  1. Put the product in the character image from the start. For example, add “holding a giant pink tub of BERRY GLOW strawberry sugar mask next to her face, label facing the camera” to the base prompt.
  2. Name it again in the character prompt.
  3. Use a driver holding something of about the same size and shape. A tub for a tub, a can for a can.

What other problems come up?

  • The face looks like the driver. Use a clearer character image with a larger face, and describe the character in more detail.
  • Hands look wrong. Reroll the seed. Simpler gestures are easier.
  • Out of memory. Restart ComfyUI before the run to clear VRAM from earlier workflows, and close other GPU apps.
  • Framing jumps. Match the framing of the character image and the driver.

Can you keep the original audio?

Yes, if it is your own voice. Lip movement follows the driver, so you can lay the driver’s audio back onto the result in any editor and it stays in sync. If you generated the driver, add a voiceover you recorded or a TTS voice you have a license for.

What do you do with the finished swap?

For a social ad: upscale to 1080 x 1920, add captions and a hook, and label it as AI-generated when you post. Making AI UGC product ads with a fictional character has the full recipe and the rules worth following.

If you want this workflow ready to load, with the chunking already wired, a side by side output and the product prompts, it is workflow 04 in the AI Character Kit.