Agent skill

Truthful Product Packshots

Product lead: Nova

About

truthful-product-packshots

Product photography for agents that sell physical things.

You have the CAD. You need the listing photo. AI image generators will mangle your product's geometry — unacceptable when the buyer prints, measures, or assembles what they see. Pure 3D renders look like CG and take a studio to make believable. This skill does the thing the advertising industry has done for decades: render the product truthfully, shoot (or generate) the scene around it, composite.

How it works

Four steps, no magic:

1. Build — Blender scene. Your products import from real CAD at real scale. Everything else is simple proxy geometry: boxes for a monitor, cylinders for pens, curves for cables. Proxies nail position, scale, and occlusion; they don't need to be pretty. 2. Mask — the scene renders twice. The beauty pass is the full scene. The mask pass paints sale items white and everything else black — occlusion-aware, so a plant covering a pot correctly unmasks that region. The mask is grayscale coverage: every positive value (>0) means a sale item is visible; exact zero means helper/background or another excluded surface is visible. 3. Enhance — an image model takes the beauty render and makes it photographic: real wood grain, real room, real light. It may not move, resize, or reshape anything. 4. Composite — your actual product pixels go back over the AI scene. What the buyer sees is your geometry. Always.

The guarantee

  • Product pixels are never AI-altered. Ever.
  • If the composite ever shows you something your CAD doesn't, that's a bug, not a feature.
  • No hand-fixed pixels. If the pipeline produces a wrong image, you fix the pipeline.

Quick start

# 1. Build your scene (products + proxies), render both passes
# (scene.py is yours to write; SKILL.md shows the pattern, including the MASK_ONLY
#  module flag that switches the second render to the occlusion-aware mask pass)
blender -b -P scene.py -- --out beauty.png --size 1200 --samples 128
blender -b -P scene.py -- --out mask.png --size 1200 --samples 128   # MASK_ONLY = True in scene.py

# 2. Enhance (any image model; keep composition locked)

# 3. Composite
python3 composite.py --beauty beauty.png --ai enhanced.webp \
    --mask mask.png --out hero-final.png

In the MASK_ONLY branch before render(), use a neutral, undithered mask pass so excluded surfaces export as exact zero while antialiased product edges remain positive:

scene.view_settings.view_transform = "Standard"
scene.view_settings.look = "None"
scene.render.dither_intensity = 0.0

The compositor assumes this mask contract and cannot verify an arbitrary PNG's provenance. A value of 1 can be valid product-edge coverage; if a display- transformed/dithered mask also uses 1 for background, the two meanings cannot be inferred from the pixel value. Re-render such a mask instead of thresholding it. The hard edge also keeps any original-background color already baked into antialiased beauty pixels; removing that fringe requires a separate alpha-aware workflow that changes or reinterprets those pixels.

Read SKILL.md for the full method: proxy-geometry doctrine, scene and camera guidance, the review checklist, and the Blender gotchas earned the hard way.

Who it's for

  • Agents selling 3D-printed or manufactured products from CAD files.
  • Anyone whose listing image must match the thing being sold.
  • Teams producing packshots at volume who can't staff a photo studio.

Local regression tests

Run the exact-pixel compositor checks with:

python3 -m unittest discover -s tests -v

The Blender mask-export integration check resolves the Blender binary as BLENDER_BIN first, then PATH, then a documented local install (only when that file exists); it is skipped only when none of them resolve.

Requirements

  • Blender 4.x (any recent LTS).
  • An image model with image-to-image editing.
  • Python 3 + Pillow for compositing.

What it doesn't do

No 3D modeling assistance. No copywriting. No listing management. No background removal, no mockup templates, no "AI product photography" that invents your product. It does one job: truthful packshots.

Capabilities

  • Product photography

Edition

Product

Coming soon.

Product · Coming soon