Free Online Universal 3D Viewer (42+ Formats)

Also from Innerscene: Circadian Lab, a free lighting calculator for room illuminance, melanopic EML, and glare.

Private by default — files are parsed locally in your browser. Uploading is only required if you choose to share a link.

Supported Import Formats

42 3D file formats are parsed and rendered. Click a row to open the dedicated viewer page when one exists.

FormatExtensionCategoryDescription
SketchUp LayOut.layoutarchiveA SketchUp LayOut page-layout document (.layout). The viewer extracts the embedded SketchUp model and renders it.
Zipped Model.ziparchiveA model file zipped for email or download (e.g. OBJ + MTL). The viewer opens the archive and loads the model inside.
Autodesk Revit.rvtcadNative Revit projects (Revit 2024 and later). The element database is read directly and the model is rebuilt from Revit’s own computed solids: walls with their joins and door/window openings cut, floors, roofs, ceilings, stairs, railings, columns, structural framing, and placed family instances (each rebuilt from its family symbol and placement), grouped into per-category layers. Curved surfaces fall back to parametric reconstruction where possible; a Revit file stores no mesh geometry at all, so anything beyond these types still renders best from an IFC export.
IFC (Building).ifccadIFC building information models (BIM): walls, slabs, windows, doors, and MEP, grouped into per-type layers. Tessellated via web-ifc.
IGES.iges, .igscadIGES/IGS neutral CAD surfaces and B-rep solids (NURBS), tessellated via OpenCASCADE.
Rhino 3D Model.3dmcadRhinoceros NURBS-based CAD models (BReps, SubD, polysurfaces, mesh).
SketchUp Model.skpcadSketchUp 3D models with faces, components, layers, and materials.
SolidWorks.slddrw, .sldprt, .sldasmcadSolidWorks parts, assemblies and drawings. A part or assembly (.sldprt, .sldasm) renders as real 3D geometry: the display mesh SolidWorks itself draws, saved in the file as triangle strips per face and decoded here in meters with smooth normals — an assembly arrives already assembled. A drawing (.slddrw) opens as the full-resolution sheet image saved in the file, every view, dimension and title-block field legible, with a picker for each sheet. Documents that embed no geometry (external-component assemblies, by-reference saves) get a plain notice pointing at STEP.
STEP (ISO-10303-21).step, .stpcadISO-10303 STEP/STP CAD assemblies (AP203, AP214, AP242).
Text / Source Code.txt, .text, .md, .markdown, .log, .csv, .tsv, .py, .pyw, .js, .mjs, .cjs, .jsx, .ts, .tsx, .json, .jsonc, .c, .h, .cpp, .cxx, .cc, .hpp, .hxx, .hh, .ino, .cs, .java, .kt, .kts, .swift, .go, .rs, .rb, .php, .pl, .pm, .lua, .sh, .bash, .zsh, .bat, .cmd, .ps1, .psm1, .psd1, .sql, .yaml, .yml, .toml, .ini, .cfg, .conf, .css, .scss, .less, .xml, .tex, .rdocumentPlain text and source code, rendered as a line-numbered, syntax-highlighted listing. Python, JavaScript/TypeScript, C/C++, C#, Java, Go, Rust, shell and PowerShell scripts, SQL, JSON, YAML, TOML, INI, CSS, XML, Markdown and more color by language; logs, CSV and unrecognized text render plain. Any readable text file opens, whatever its extension.
Word Document.docx, .docmdocumentWord documents, paginated the way Word paginates them: the style cascade, line breaking against real font metrics, tables, headers and footers, footnotes, numbered and bulleted lists, inline and floating images. Text stays selectable and searchable, and links stay clickable.
Adobe Illustrator.ai, .aitdrawingAdobe Illustrator artwork. Illustrator 9 and later save a PDF-compatible copy, which renders as vector pages; Illustrator 8 and earlier are PostScript, read directly as paths, layers, and text.
AutoCAD Drawing.dwgdrawingAutoCAD drawings with 2D linework and 3D solid geometry.
AutoCAD DXF.dxfdrawingAutoCAD DXF text drawing exchange format.
Autodesk DWF / DWFx.dwf, .dwfxdrawingAutodesk DWF/DWFx published drawing sets — WHIP 2D vector sheets and HOOPS 3D models, with a multi-sheet picker.
Esri Shapefile.shpdrawingEsri shapefile GIS vector data: parcels, roads, boundaries, and 3D multipatch buildings. Opens a bare .shp, or a .zip of the whole set (.shp + .shx + .dbf + .prj) with real units from the .prj.
Gerber (PCB Fabrication).gbr, .ger, .gtl, .gbl, .gts, .gbs, .gto, .gbo, .gtp, .gbp, .gko, .gm1, .drl, .xln, .exc, .drddrawingGerber (RS-274X / X2) and Excellon drill data: the files a printed circuit board is fabricated from. Drop the whole fab package as a .zip and the board is stacked up layer by layer, in fabrication order, with copper, solder mask, silkscreen, paste, outline and drill holes on their own toggles. Layers are identified from their X2 file-function attributes or their filenames, and layer files are recognised by their contents, so a package whose layers are named .art, .001 or nothing at all still opens. Aperture macros, thermals, step & repeat, block apertures, regions, arcs, clear polarity and both zero-suppression conventions are all read.
PDF Document.pdfdrawing
SVG (Scalable Vector).svgdrawing
AVIF Image.avif, .avifsimageAVIF raster image: an AV1-compressed still, common on photo sites and modern phones.
BMP Image.bmp, .dibimageWindows BMP raster image (uncompressed device-independent bitmap).
GIF Image.gifimageGIF raster image: indexed-color bitmap. Animations show their first frame.
HEIC / HEIF Image.heic, .heif, .hifimageHEIC/HEIF photo, the iPhone camera default. Decodes in Safari; other browsers need it saved as JPEG first.
JPEG Image.jpg, .jpegimageJPEG raster image — lossy compressed photograph.
PNG Image.pngimagePNG raster image — lossless bitmap with transparency.
TIFF Image.tif, .tiffimageTIFF raster image, the scanner and print archive format. Decodes in Safari; other browsers need it saved as JPEG first.
WebP Image.webpimageWebP raster image, the compact web format from Google.
3D Manufacturing.3mfmesh3D Manufacturing Format — modern STL replacement for 3D printing.
3D Studio.3dsmeshLegacy Autodesk 3D Studio binary mesh format.
Autodesk 3ds Max.maxmeshNative Autodesk 3ds Max scenes. Reads collapsed Editable Poly / Editable Mesh geometry, parametric primitives, the object hierarchy with instancing, layers, and material colors. Geometry that only exists through a live modifier stack, NURBS/patch surfaces, and external V-Ray/Corona proxy meshes cannot be recovered from the file by any third-party tool.
Autodesk FBX.fbxmeshAutodesk FBX — game-engine asset pipeline standard.
Blender.blend, .blend1, .blend2meshNative Blender scenes, every version from 1.6 in 1996 to 5.x — fifty-eight releases, both byte orders. Reads the mesh geometry the file stores — vertices, faces, UVs, vertex colours, flat/smooth shading and per-face material slots — placed by each object’s transform, with collections as layers and collection instances expanded. Materials come from the Principled BSDF in each material’s node tree, including packed image textures. Shapes that exist only as a modifier result (Subdivision, Mirror, Array, Boolean) or as Geometry Nodes output are not in the file at any version and render as their input cage.
COLLADA.daemeshCOLLADA XML scene format with materials and animation.
glTF Binary.glbmeshglTF binary — PBR materials, textures, animations, single-file.
glTF JSON.gltfmeshglTF JSON manifest with external .bin and image siblings.
Polygon File Format.plymeshPolygon File Format for 3D scanning, with vertex colors.
Stereolithography.stlmeshTriangle-soup mesh for 3D printing. Binary or ASCII.
VRML.wrl, .vrml, .wrzmeshVRML 2.0 — legacy web 3D format, text-based.
Wavefront OBJ.objmeshWavefront OBJ text format with companion .mtl material file.
X3D.x3d, .x3dvmeshX3D — the XML successor to VRML, still used in scientific viz.
LAS / LAZ Point Cloud.las, .lazpointcloudLAS/LAZ LiDAR and photogrammetry point clouds, including LASzip-compressed .laz. Rendered with per-point RGB, an ASPRS classification palette, or an intensity ramp, and split into per-class layers when the scan is classified.
Windows Program.exe, .dll, .sys, .ocx, .cpl, .scr, .efi, .munprogramA Windows program (.exe, .dll, .sys) holds machine code, not geometry. Dropped on the viewer it opens as an info sheet: the application icons, the version block Explorer shows in Properties, who signed it and when, the architecture and subsystem, the libraries it links against and delay-loads, per-section entropy with a packer verdict, the C++ classes recovered from RTTI, the COM interfaces it uses, and whether anything is appended to it. A view menu opens the rest: every embedded string, a disassembly of any code section (x86, x86-64, ARM and ARM64) with calls resolved to the imported functions they reach, string literals shown at their reference sites, function boundaries from the exception directory, and public symbols fetched from the Microsoft symbol server when the build published them. Every embedded resource renders too: icons, cursors and bitmaps as pictures, dialog templates drawn to scale, string, menu, accelerator and message tables, and manifests. A self-extracting archive is opened, and the model inside it is loaded. Programs are never shared, embedded, or re-downloaded from here.

Detection only

These formats are recognized but not yet rendered. Click Report in the toolbar with a sample file to vote one onto the implementation queue.

IES Photometric.ies

Supported Export Formats

Open a file in any supported format, then click Export in the toolbar to save as:

STL

.stl

Binary stereolithography mesh for 3D printing, CNC, and FEA.

OBJ + MTL

.zip

Wavefront OBJ + companion MTL material file, bundled as a zip.

glTF Binary

.glb

Self-contained GLB with PBR materials, textures, and layer structure preserved as glTF nodes.

PDF Snapshot

.pdf

A4 landscape PDF of the current view with header caption (filename, format, triangle count) and footer.

Because all formats normalize into the same internal scene model, every supported import format can be exported as any of the four outputs — e.g. Rhino .3dm to STL, FBX to GLB, SKP to PDF, etc.

Features

Auto Format Detection

Drop any file — magic-byte sniffing identifies the format before parsing, so you don’t need to set anything.

Shared SceneGraph

Every adapter normalizes into the same scene model: meshes, materials, layers, transforms. Behavior is consistent regardless of source format.

Layer Visibility

Toggle layers on/off from the side panel. Works for SKP, DWG, STEP assemblies, Rhino layers, and any format with grouping.

View Presets

3D orbit plus six orthographic views (top, bottom, front, back, left, right). Solid, wireframe, or x-ray render modes.

Share Links

Generate a shareable link that preserves view state, layer visibility, and render mode. Recipients see the model exactly as you have it open.

Embed Anywhere

One-line iframe snippet drops the viewer into any HTML page. Optional toolbar-hidden mode for chromeless embeds.

Universal Export

Save any supported format as STL, OBJ, GLB, or PDF — even formats this site can’t natively author (like 3DM or FBX → STL).

No Server Round-Trip

Files are parsed and rendered in WebAssembly or pure JavaScript on your machine. Nothing uploads by default.

Issue Reporting

The Report button bundles your file, view state, and a screenshot into a one-click bug or feature submission.

How It Works

  1. 1

    Drop or open a file

    Drag a 3D file onto the viewer, or click "Open a 3D File" to pick from your machine. URLs work too via the ?url= query parameter.

  2. 2

    Auto-detect + parse

    The viewer reads the first 16 KB of the file to identify the format via magic bytes, then lazy-loads the matching adapter (no wasted bandwidth on parsers you don’t need).

  3. 3

    Render + explore

    The parsed scene normalizes into a shared SceneGraph (meshes, materials, layers). Three.js renders it; the toolbar offers view presets, render modes, and layer toggles.

  4. 4

    Share, embed, or export

    Generate a share link (file + view state preserved), copy an iframe snippet, or save as STL / OBJ / GLB / PDF — all without leaving the page.

Dedicated Viewer & Converter Pages

Every common format has its own page with format-specific documentation, FAQ, and SEO-friendly URL. They share this same viewer under the hood.

IFC (Building)

.ifc

Authored by: Revit, ArchiCAD, Tekla, Vectorworks, Bentley

IGES

.iges, .igs

Authored by: CATIA, NX, Creo, SolidWorks, DATAKIT exports

Rhino 3D Model

.3dm

Authored by: Rhinoceros, Grasshopper

SketchUp Model

.skp

Authored by: SketchUp

SolidWorks

.slddrw, .sldprt, .sldasm

Authored by: SOLIDWORKS

STEP (ISO-10303-21)

.step, .stp

Authored by: SolidWorks, CATIA, Inventor, Fusion 360, NX, Creo

Word Document

.docx, .docm

Authored by: Microsoft Word, Google Docs export, LibreOffice Writer, Pages export

AutoCAD Drawing

.dwg

Authored by: AutoCAD, Revit, Civil 3D

Autodesk DWF / DWFx

.dwf, .dwfx

Authored by: AutoCAD, Revit, Civil 3D, Inventor, Navisworks (DWF publish)

Esri Shapefile

.shp

Authored by: ArcGIS, QGIS, county/city open-data portals, US Census TIGER/Line

Gerber (PCB Fabrication)

.gbr, .ger, .gtl, .gbl, .gts, .gbs, .gto, .gbo, .gtp, .gbp, .gko, .gm1, .drl, .xln, .exc, .drd

Authored by: KiCad, Altium Designer, Eagle, OrCAD/Allegro, Pads, Fusion 360 Electronics, EasyEDA, gEDA

Autodesk 3ds Max

.max

Authored by: 3ds Max (archviz, product visualization, game and film art)

Autodesk FBX

.fbx

Authored by: Maya, 3ds Max, MotionBuilder, Unity, Unreal

Blender

.blend, .blend1, .blend2

Authored by: Blender (modelling, animation, archviz, game and film art)

glTF Binary

.glb

Authored by: Blender, Three.js, Unreal, Unity exports

glTF JSON

.gltf

Authored by: Blender, glTF Validator

Stereolithography

.stl

Authored by: Every CAD tool, every 3D printer slicer

Wavefront OBJ

.obj

Authored by: 3ds Max, Maya, Rhino, Cinema 4D, Blender

LAS / LAZ Point Cloud

.las, .laz

Authored by: Agisoft Metashape, RealityCapture, Pix4D, Trimble, Leica, FARO, terrestrial and airborne LiDAR

Your Files Stay on Your Computer

Files are parsed by JavaScript and WebAssembly running in your browser. Nothing is uploaded by default. The Share button is the only feature that touches a server — and only when the file isn’t already a public URL. Shared files are stored for 90 days and then deleted automatically.

STEP and IGES CAD files are tessellated with Open CASCADE Technology via occt-import-js (LGPL-2.1). Word documents are typeset with Carlito, Caladea, Liberation and Gelasio (SIL OFL 1.1). See the open-source licenses.

Use of this viewer is governed by our Terms of Use.

Frequently Asked Questions

Which 3D file formats are supported?

The viewer renders 42 formats today and detects 1 more. See the full catalog below for extensions, descriptions, and links to dedicated viewer pages.

Can I convert between formats?

Yes. Open any supported format and click Export in the toolbar to save as STL (3D printing), OBJ (Wavefront), GLB (glTF binary), or PDF (snapshot of the current view).

Is anything uploaded to a server?

No, not by default. Files are parsed and rendered entirely in your browser. The only time a file is uploaded is when you explicitly click Share and the file is local (not already served from a URL) — in that case it’s stored for 90 days to back the share link.

How big a file can I open?

The viewer can handle multi-hundred-megabyte files on a modern desktop browser. Mobile devices may struggle with very large files. The Share upload limit is 100 MB — larger files can still be viewed locally, just not uploaded for sharing.

Can I embed the viewer in my own site?

Yes. Click Embed in the toolbar to generate a one-line iframe snippet for any model URL. You can choose whether the embed shows the surrounding toolbar, pick a compressed or readable link, and set the starting camera, view, layers, and render mode. See the embedding guide for the full list of URL parameters.

How do I open a file directly via URL?

Pass ?url=with the public URL of your file, e.g. /tools/3d-viewer?url=https://example.com/model.glb. The viewer auto-detects the format from the file’s magic bytes. The same parameter also takes a data: URI, which carries a small file inline with no server involved. For files with no public address at all — bytes your page already holds, anything behind a login, or a file on the visitor’s own machine — embed with ?pm=1 and post the model in directly; see the embedding guide.

What if my format isn’t supported yet?

Click Report in the toolbar with a sample file and a short note — we add formats based on real user requests. IES is detected today but not yet rendered; that’s next on the list.

Need a wellness lighting solution?
Contact our experts today!