Universal 3D viewer
Viewer for STL, OBJ, GLB, GLTF, PLY and 3MF files, with real-millimeter measurements, wireframe view and screenshots. Processing is local: the file never leaves your machine.
Viewer for STL, OBJ, GLB, GLTF, PLY and 3MF files, with real-millimeter measurements, wireframe view and screenshots. Processing is local: the file never leaves your machine.
Drag the file onto the page or pick it from your computer. It loads as a local blob — it never gets uploaded.
Orbit with the mouse, toggle wireframe or clay, and measure real millimeters between any two points.
Export a PNG of your framing, or jump straight to the converter if you need another format.
No. The ilove3d 3D viewer runs entirely in your browser using WebGL: when you pick a file, the browser opens it as a local blob and draws it on your own graphics card. There is no upload, no intermediate server and no remote storage — if you open your browser's network panel while loading a model, you won't see a single outgoing request carrying your file. This matters in two concrete situations. First, intraoral scans and patient CT data, which are health records and shouldn't pass through someone else's server even if that server promises to delete them. Second, commercial models under an NDA, where uploading to an online converter is a breach whether or not anyone actually looks at the file. Because all processing is local, you can also keep using the viewer offline once the page has loaded.
There is no fixed limit, because there is no server to impose one: the ceiling is your own machine's memory. In practice the ilove3d 3D viewer opens models up to roughly 200 MB without trouble on a modern desktop, which in binary STL is several million triangles. On a phone the margin is considerably smaller, around 50 MB, because browsers cap memory per tab. If a file takes forever or the tab closes by itself, that's memory rather than a problem with the file. The way out is to run the mesh through reduce polygons first, which lowers the triangle count while keeping the silhouette, or through GLB compression if the model carries heavy textures. 3D scans are the usual candidates: they arrive with far more density than you need either to inspect the model or to print it.
Because mesh formats don't store units. An STL, OBJ or PLY file contains bare coordinates with no indication of whether they mean millimetres, centimetres or inches; that interpretation is left to whatever program opens the file. The 3D printing convention, and the one every slicer follows, is that one unit equals one millimetre, so the ilove3d 3D viewer honours the file's original dimensions and measures on them without rescaling anything. If your part shows up ten or twenty-five times larger than expected, it's almost always because the program that exported it was working in centimetres or inches. That's not a reading error: it's the format's ambiguity, and every other viewer hits it too. You fix it by scaling the model with the transform tool before sending it to print.
It depends on the format, because not all of them store colour. GLB and GLTF do: they carry textures embedded alongside materials, and the ilove3d 3D viewer shows them with their original appearance, including how the image maps onto the surface. PLY and OBJ can carry per-vertex colour — typical of a photogrammetry scan — and that is honoured too. STL, on the other hand, supports no colour at all: the format only stores triangles and their normals, so any STL is shown in clay mode, a neutral material that brings out relief and surface flaws. If you downloaded a coloured model and it looks grey, check the extension: the colour was almost certainly lost when it was converted to STL, not when opening it here. To keep appearance, work in GLB end to end.