Product Mockups: Put Your Design Draft onto a Real Object
You have two things in hand: a real photo of the product and a design draft (a print, sticker, or packaging pattern). The ComfyUI product mockup workflow lets FLUX.2 Dev reference both images at once and "paste" the pattern onto the object's surface—with wrinkle distortion and lighting, not a rigid layer overlay. Compared to manually pasting in Photoshop, it preserves the realism of material and lighting; compared to physical sampling, it saves a round of photography.
Applicable Scenarios
- Apparel prints: paste a new pattern onto real photos of T-shirts or hoodies to quickly produce listing-ready renders.
- Stickers and phone cases: put the design draft onto real photos, skipping sample photography.
- Car bodies and packaging: preview by pasting paint jobs or packaging designs onto photos of cars or boxes.
- Not suitable for: print proofing that requires pixel-perfect alignment. Generated images will have distortion, so they work only as showcase images, not as production artwork.
Preparation
- ComfyUI runs normally; if you haven't run the e-commerce image workflow yet, first read E-commerce Image Practice: From White-Background Images to Product Videos.
- Workflow file: the Product Mockup workflow
image_flux2_fp8.jsonprovided by the FLUX.2 Dev tutorial (docs/tutorials/flux/flux-2-dev.mdx), in the repository's templates directory. - The LoadImage and SaveImage nodes in the workflow are both comfy-core built-in nodes.@@I18N_KEEP_000017@@
- FLUX.2 Dev model weights.@@I18N_KEEP_000018@@
- Two input images: one real product photo and one design draft. The default example in the design draft slot is
image_flux2_input_Illustration.png; replace it with your own pattern.
Follow Along: A 3-Step Workflow
Step 1: Load the Workflow and Place the Two Images
Drag image_flux2_fp8.json onto the ComfyUI canvas and find the two LoadImage nodes. One holds the real product photo, deciding "what to paste onto"; the other holds the design draft, deciding "what to paste".
Step 2: Run the Generation
Click Queue Prompt to start generating. FLUX.2 Dev reads both images at once with multi-reference consistency, re-rendering the design draft pattern according to the object's shape and lighting. The result is saved via the SaveImage node with the filename prefix Flux2.
Step 3: Compare and Pick
If the first image isn't ideal, run it a few more times and compare image by image to pick the best. Focus on whether the pattern's edges follow the object's curves and wrinkles and whether the colors match the original design draft, then choose the most natural one for the detail page.
Checkpoints
- Fit: the pattern's edges should deform along wrinkles and curved surfaces; if the pattern "floats" on the surface, first check whether the two images are swapped.
- Lighting: the design draft's highlight direction should match the real photo's lighting; if there's a clear conflict, rerun.
- Color: compare side by side with the original design draft; if the color shift is severe, change the seed and try again.
- Resolution: the output size must be large enough for zoomed-in viewing on detail pages; if not, switch to a larger real-photo base image.
Boundaries and Next Steps
Generation results are random—the same workflow produces different outputs across runs, so don't expect to finalize in one shot; for precision alignment needs (packaging dielines, print color separation), go back to design software.
The repository also has two related templates: templates-car_product.json (car product mockup) and template_product_placement.json (product placement scene)—apply them directly if you want a different carrier.@@I18N_KEEP_000019@@
To dig deeper into the reference mechanism, see FLUX.2: Dev Multi-Reference Consistency and the Klein Lightweight Version; to locally fix fitting flaws, use FLUX.1 Fill: Local Inpainting and Outpainting.
Next step: Product Videos: Bring Product Images to Life, to bring your mockup images to life.