Reactor Vidu S2-Avatar Reference
Hand your avatar a prop, an outfit or a room
- image
- REACTOR_REFERENCE
This is a factory node: an image goes in, a REACTOR_REFERENCE comes out, and only Vidu S2-Avatar knows what to do with it. It's how you dress your avatar, put something in its hands, or stand it in front of a different wall.
What it's for
A Vidu S2-Avatar segment gives you a character built from one photo. This node adds the props. Three kinds, declared explicitly:
- object - something the character holds or picks up. The tooltip's own example: "He holds up the crystal ball."
- garment - something the character wears.
- background - the room it stands in.
If you've spent any time on character consistency locally, this is the hosted analogue of reference conditioning: not a trained LoRA, not an IP-Adapter stack, just an image and a sentence. Less control, far less setup, and it only works inside this pack's avatar model.
How it works
The node wraps your image into a reference tagged with its kind and an optional line of text, and that reference rides along with the segments you connect it to on a Vidu S2-Avatar node. Up to three references can be in effect on a segment at once, so an outfit plus a prop plus a room is a legal combination - and about as much as the model handles well.
The one structural rule, straight from the node's description: connect it to each segment it lasts for. A reference goes away at the first segment without it. That means holding a prop across four segments is four wires, not one. Annoying? Slightly. But it makes the state visible on the canvas, which is better than a sticky setting you forget about - the Helios image-strength trap, in the same pack.
The inputs that matter
- image - the object, garment or background. For an object or outfit, use a plain background, so the character takes the item and not its surroundings. This is the author's own note and it's the difference between a clean try-on and a photo of a model wearing a shelf.
- kind -
object,garmentorbackground. Decide it deliberately; the model treats them differently. - text - optional, one plain sentence saying what happens: "He holds up the crystal ball." Up to 200 characters are sent - everything past that is discarded.
- REACTOR_REFERENCE (output) - to a
reference_socket on Reactor Vidu S2-Avatar Segment.
Install
ComfyUI Manager, search comfyui-reactor-api, or:
cd ComfyUI/custom_nodes
git clone https://github.com/reactor-team/comfyui-reactor-api
pip install -r comfyui-reactor-api/requirements.txt
No weights, one dependency (reactor-sdk>=1.6), and you'll need REACTOR_API_KEY set - environment or config.ini under [API] - before anything actually renders. Restart ComfyUI and the pack appears under Reactor.
Where people get burned
Wrong kind. A garment tagged object gets treated as a hand-held item, and it looks like it. Match the kind to what the picture actually is.
Busy backgrounds. Shoot objects and outfits against something plain. The model takes the whole image, so a garment photographed on a patterned bedspread brings the bedspread.
It only talks to the avatar. The compiler rejects references made for one model being fed to another, and a reference node wired anywhere else does nothing useful.
Wiring it once. Every segment it should be active on needs the connection. If the crystal ball vanishes at segment three, look for the missing wire before you rewrite the prompt.
Text is a sentence, not a paragraph. One plain line, under 200 characters. It's a caption for the action, not a script - the dialogue itself belongs in the avatar segment's prompt.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | For an object or outfit, use a plain background, so the character takes the item and not its surroundings. | |
| kind | COMBO | What the image is: an object to hold, a garment to wear, or a background to stand in. | |
| textopt | STRING | One plain sentence saying what happens, such as "He holds up the crystal ball." Up to 200 characters are sent. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| REACTOR_REFERENCE | REACTOR_REFERENCE | — |