Skip to content

Image to 3D: object generators and scene generators are not the same tool

By Atlas World Model EditorialUpdated 6 min read

Independent article. Not affiliated with any vendor on this page.

Key facts

The questionDo you want a thing, or the place the thing sits in? Different tools, different file types(as of 2026-09-07)
Object generators returnA single mesh with UVs and textures, typically .glb, .obj or .fbx(as of 2026-09-07)
Scene generators returnA whole space, usually as a Gaussian splat and sometimes a mesh(as of 2026-09-07)
Object-level examplesTripo and Meshy both market image-to-3D model generation(as of 2026-09-07)source
Scene-level example you can callMarble World API exports .spz and .ply splats, a mesh and a video(as of 2026-09-07)source
Scene-level, not yet publicAtlas outputs point clouds and Gaussian splats; early access only(as of 2026-09-07)source
Photos neededWorld Labs says Atlas reconstructs from as few as two or three images; classical splat capture usually wants dozens(as of 2026-09-07)source
Why it matters downstreamA mesh carries surface geometry for collision and materials; a splat is a render-first representation(as of 2026-09-07)

Search “image to 3D” and you will meet two categories of tool wearing nearly identical marketing. Upload a photo to one and you get a model of the thing in the photo. Upload a photo to the other and you get the place the photo was taken. Both are accurate descriptions of “image to 3D.” Only one of them is what you wanted. Product names below are used only to identify the tools; this page describes what each category returns rather than benchmarking output.

Thirty seconds: which one do you need?

Three questions settle it almost every time.

  1. Does the camera go inside it? Inside means scene. Around the outside means object.
  2. Is there one subject, or a place with many things in it? One subject means object.
  3. Does anything have to collide with it, be picked up, or be animated? That needs clean surface geometry, which points to object-level output — even if the surroundings come from a scene tool.

If the answers split — you need a room and a chair you can pick up — that is not a contradiction. It is the normal case, and the section on mixing both covers it.

Object generators: one thing, as a mesh

This is the larger and older category, and it owns most of the “image to 3D” search results. Tools such as Tripo and Meshy take a photo or a text prompt describing a single subject and return a mesh: triangles, UV coordinates and texture maps, usually as .glb, .obj or .fbx. Tencent’s Hunyuan3D and Meta’s SAM 3D work at the same level.

What makes this category coherent is the deliverable. A mesh is what game engines, DCC tools and 3D printers all expect. It has a pivot point you can rotate around, a surface you can attach a physics collider to, and a material you can retexture. You can drop it into a scene somebody else built and it behaves like every other asset there.

The boundary of the category is equally clear: these tools model one closed surface, seen from outside. That assumption is what makes them good at chairs, helmets, characters and product shots — and what makes them fail at rooms.

Scene generators: a place, usually as a splat

The other category generates or reconstructs a space. Marble from World Labs takes text, a single image, multiple images, a 360° panorama or video and returns a navigable world, exporting Gaussian splats as .spz or .ply alongside a mesh and a fly-through video (Radiance Fields). Atlas, the newer World Labs model, outputs point clouds and Gaussian splats but is limited to early-access partners (Dealroom).

Capture tools such as Polycam and Luma sit in the same category from the user’s point of view: photos in, a space out. The difference is that they reconstruct what was actually there, while generative scene models invent the parts you did not photograph. World Labs says Atlas can work from as few as two or three reference images (The Decoder), where classical splat capture normally wants dozens of overlapping shots. That claim is self-reported and has not been independently reproduced.

The signature of this category is that the camera belongs inside the result. You are not orbiting a subject; you are standing somewhere.

Side by side

Object generatorsScene generators
Typical inputOne photo or prompt of one subjectPhotos, video, a panorama, or text describing a place
What comes backOne meshA whole space
Common formats.glb, .obj, .fbx.ply, .spz splats; sometimes a mesh
Camera positionOutside, looking inInside, looking around
Collision and physicsStraightforwardNeeds a mesh export or a proxy
Retexture and animateDesigned for itNot really
Photoreal environmentNoYes, this is the strength
ExamplesTripo, Meshy, Hunyuan3D, SAM 3DMarble, Atlas, Polycam, Luma

The format difference is the real difference

Everything above follows from what the two output formats actually are.

A mesh is a description of surfaces. Triangles have a front and a back, UVs map an image onto them, and a material says how light behaves at each point. Every game engine has been built around this representation for thirty years, so a mesh arrives ready to be lit, collided with, skinned and animated.

A Gaussian splat is a description of appearance. It stores millions of coloured, oriented, semi-transparent blobs positioned in space, which together reproduce what a camera would have seen. It can look startlingly photoreal, especially for a real place, because it never had to commit to where the surfaces are. That is also its limitation: there is no surface, so there is nothing to collide with, nothing to retexture, and no clean way to separate one object from its neighbour. The formats themselves are covered in PLY vs SPZ explained, and the trade-offs against the older NeRF approach in Gaussian splatting vs NeRF.

The practical summary: meshes are for interacting with, splats are for looking at. A splat also needs a renderer that understands it — a plugin, or a runtime such as the MIT-licensed Spark renderer, which is what powers the splat viewer on this site. A mesh needs nothing special.

This is why scene tools that also export a mesh are easier to fit into an existing pipeline, even when the mesh is rougher than the splat. It gives you something to stand on.

What going wrong looks like

Room from an object generator. You get a room-shaped object. From outside it reads correctly. Move the camera in and you are looking at the back of every surface: no interior detail, lighting that makes no sense, and geometry that was only ever solved for an exterior view. No amount of prompting fixes this, because the model was built for closed subjects seen from outside.

Prop from a scene generator. You get your prop embedded in its surroundings, in a representation with no boundaries between objects. Cutting the chair out of a splat of the room is not a selection operation; there is no chair, only the blobs that happen to look like one from where you stood.

Splat straight into an engine, expecting an asset. It renders — if you installed something that can render it — and then nothing else works. The player walks through walls, nothing casts a shadow onto it, and no material can be swapped. It was never geometry.

Mixing both is the normal answer

Most real pipelines use the two categories for what each is good at:

  • Environment from a scene tool. Photoreal, fast to produce, and never touched by physics — a backdrop, a skybox replacement, a location plate.
  • Interactive elements from an object generator. Anything picked up, opened, driven, shot at or animated needs a mesh with a collider, so it is authored or generated as an object.
  • A collision proxy for the environment. A rough mesh — either the scene tool’s own mesh export or a hand-built box-and-plane approximation — sits invisibly inside the splat so the player has floors and walls. This is the step most often skipped, and it is what makes a splat environment playable rather than decorative.

The game development use case on this site works through how these pieces land in Unity and Unreal.

Where to go next

Sources

  1. Tripo
  2. Meshy
  3. World Labs: Announcing the World API
  4. Radiance Fields: World API for Marble
  5. Dealroom: World Labs unveils Atlas
  6. The Decoder: reconstructing 3D worlds from a few photos
  7. Spark, an MIT-licensed Gaussian splat renderer

Frequently asked questions

What does "image to 3D" usually mean in search results?

Most of the time it means object generation: upload a photo of one thing and get a mesh of that thing. Scene generation, where a photo becomes a space you can move through, is a smaller and newer category that often uses the phrase "3D world" or "3D environment" instead. If the results you are getting look wrong for your task, that mismatch is usually why.

Can I use an object generator to make a room?

You can, and the result is usually a room-shaped object rather than a room. It looks correct from outside, but walk the camera inside and you meet back-faces and no interior detail, because the model was built to produce one closed surface seen from outside.

Can I use a scene generator to make a single prop?

Poorly. You get the prop plus whatever surrounded it, in a representation that is hard to cut cleanly. If the deliverable is one asset with its own pivot, UVs and collision, an object generator is the right tool.

What is the difference between a mesh and a Gaussian splat?

A mesh describes surfaces: triangles, UVs, materials. Game engines can light it, collide with it and animate it. A Gaussian splat describes appearance: millions of coloured, oriented blobs that look photoreal when rendered but carry no surface to collide with. Meshes are for interacting; splats are for looking.

Which one works in Unity or Unreal?

Meshes work natively in both. Gaussian splats need a renderer built for them, either a plugin or a runtime such as the open-source Spark renderer. That is one reason scene tools that also export a mesh are easier to fit into an existing pipeline.

Is Marble an image-to-3D tool?

Marble is image-to-3D-scene. Give it a photo, text or video and it produces a navigable space, exporting Gaussian splats as .spz or .ply plus a mesh and a video. It is not the tool for generating a single product model from a catalogue photo.

Do most projects need both?

Frequently, yes. A common split is a captured or generated scene for the environment and object-level assets for anything the player or camera interacts with, because those are the parts that need clean geometry.