One photo in. Editable 3D scene out. Not a mesh dump - actual Blender Python you can tweak, version, and rerun.
Meet VIGA - Vision-as-Inverse-Graphics Agent. Translation: it looks at a picture, guesses the scene that could have produced it, then writes the code to rebuild that scene from scratch.
I had my AI research agent tear through the repo so I could skip the fluff. The core is a tight loop: propose -> render -> evaluate -> refine. It keeps writing and testing Blender code until the render hugs your reference. No magic words, just measurable feedback.
Why this matters:
- You don’t get a frozen blob. You get a recipe. Want the table longer, the light warmer, 12 variants for A/B shots? Change a few numbers, hit run.
- Pipelines love code. Reproducible builds, scripted variations, clean diffs in git, easy hooks into your asset tools and render farms.
- It slots into automation. Kick off jobs from a folder of product shots, auto-generate scenes, publish previews, promote winners upstream.
Concrete picture: feed it a catalog photo of a chair. VIGA writes a script that builds the seat, legs, materials, camera, and lights. Now you can dial leg height, swap wood for metal, array 20 copies, set 5 camera angles, and re-render on headless Blender. That’s product content at scale without the click-fatigue.
Think of most “single-image-to-3D” tools as takeout. Fast, but you can’t change the sauce. VIGA is the pantry and the recipe card. You cook. 🎛️
Reality check:
- It’s early. Don’t expect Pixar. Complex topology and tiny decals can go mushy.
- Blender only for now. You’ll still massage materials, naming, and scale to match your house style.
- Reference quality matters. Garbage in, garbage out. Big scenes will take time.
My take: this is the right direction for 3D at scale - code, not clicks. If you’re still hand modeling seasonal variants, you’re lighting money on fire.
Developers and 3D artists: clone it, run it on one image, and wire it into your workflow this week: github.com/Fugtemypt123/VIGA 🛠️
What’s the first asset in your pipeline you’d turn from picture into script?