CompositeMotionBrushWithoutModel
CompositeMotionBrushWithoutModel
- motion_brush_layer0
- motion_brush_layer1
- MotionBrush
CompositeMotionBrushWithoutModel is the same merge as CompositeMotionBrush, minus the model input and minus the resulting headache of loading a 9.5 GB checkpoint just to combine two tensors. If you've ever squinted at a node that demands a model it never actually uses, you'll appreciate why this variant exists.
The behavior is identical: motion_brush_layer1 wins at every pixel where it has any motion (a vector larger than a rounding error), and everywhere it's still, motion_brush_layer0 shows through. The output is sized from layer0's shape - the node reads model_length, height, and width straight off the first brush - so it doesn't need a model to know what it's working with. Where CompositeMotionBrush can't even run without a loaded checkpoint, this one works on brushes alone.
Inputs
- motion_brush_layer0 - base layer, sets the output size.
- motion_brush_layer1 - overlay layer, overrides wherever it moves.
- mode - dropdown with one option,
override. Same as the model-requiring twin.
Output
One merged MotionBrush, sized to layer0. Same downstream wiring: DragNUWA Run MotionBrush, or back into another composite for multi-layer stacks.
When this is the right node
Any time you're building a brush library or planning a composite before you're ready to pay for inference. Because the brush generators - InstantCameraMotionBrush, Load MotionBrush From Tracking Points Without Model, the optical-flow "Without Model" loader - also don't need a checkpoint, you can design an entire multi-layer motion field with zero model load, preview the layering, and only spin up Load CheckPoint DragNUWA + DragNUWA Run MotionBrush for the final run. That's a genuinely better workflow than the model-gated version, and it's the one I'd default to.
The trade-offs
Same resolution and frame-count discipline as the model version - mismatched brush shapes give you garbage merges, and since this node sizes itself off layer0, a wrong-sized layer1 either bleeds or vanishes. And same SVD-era reality on the output end: the compositing is precise, but what the model does with your carefully layered flow field is still 2024-era video generation, so expect softness and occasional warping on ambitious moves.
If you're new to the pack, start here and only reach for CompositeMotionBrush when a workflow you've loaded explicitly wants the model-typed version - the "Without Model" naming is the pack's quiet way of admitting which one it should have shipped first.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| motion_brush_layer0 | MotionBrush | — | |
| motion_brush_layer1 | MotionBrush | — | |
| mode | COMBO | override | 1 options: override |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MotionBrush | MotionBrush | — |