Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>3D Mesh ViewerNew to Visual Studio Code? Get it now.
3D Mesh Viewer

3D Mesh Viewer

AssetTool Labs

|
1,487 installs
| (3) | Free
View and inspect 3D meshes (OBJ, FBX, GLB/GLTF, STL, PLY, DAE, 3DS, USD/USDA/USDC/USDZ, 3MF, VRML, and more) and Gaussian splats (SPZ, SPLAT, KSPLAT, SOG) directly inside VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

3D Mesh Viewer

A VS Code / Cursor extension that turns the editor into a fully featured 3D mesh viewer. Open any supported 3D file (GLB, GLTF, FBX, OBJ, USD/USDZ, STEP, STL, PLY, DAE, 3MF, …) — or a Gaussian splat capture (SPZ, SPLAT, KSPLAT, SOG, 3DGS PLY) — and get an interactive Three.js viewport with a scene-hierarchy tree, per-object inspector, a Blender-style shading HUD, an animation timeline / dope sheet with frame-by-frame playback, drag/drop mesh import, and a rich file-info panel — all inside a custom editor.

Install it from the VS Code Marketplace or Open VSX (search "3D Mesh Viewer"), or grab the .vsix from this repo's Releases.

Inspect any mesh

Click a 3D file and it opens right in the editor: orbit/pan/zoom the PBR-lit viewport, browse the scene hierarchy, toggle visibility per node, inspect materials and textures, and check triangle/draw-call stats in the live HUD.

Inspecting a static mesh

Animation playback with timeline

Skinned and keyframed assets get a Blender-style dope sheet: pick a clip, scrub the playhead, step frame-by-frame, and control playback speed and looping. Bone/joint markers follow the animated skeleton.

Playing an animation with the dope-sheet timeline

Gaussian splatting

3D Gaussian splat captures render right in the viewer via Spark, alongside the mesh formats. .spz, .splat, .ksplat, and .sog open directly, and .ply files are sniffed by header so both original 3DGS and PlayCanvas-compressed exports route to the splat renderer automatically. Camera framing, grid alignment, and the bounds helper all work as usual, and a one-click Flip splats upright toggle handles Y-down captures.

butterfly.spz Gaussian splat rendering

toy-cat.sog Gaussian splat rendering

Blender-style shading HUD

A shading strip next to the corner view gizmo switches between Wireframe, Solid, Material, Rendered, and Normals modes, with composable X-ray and Flat shading toggles (like Blender's Alt+Z) and the Y↑/Z↑ up-axis switch folded into the same strip — each button with instant hover explanations. Material mode previews the asset's materials under a pinned neutral environment; Rendered uses your chosen environment; Normals visualizes shader normals including the material's normal maps.

Shading HUD in Normals mode with its hover explanation

UV inspection

The Textures tab pairs a zoomable UV viewport (wheel to individual texels, drag to pan, wireframe overlay crisp at any zoom) with Blender-style element selection: pick vertices, edges, or faces in either the UV view or the 3D viewport and watch the same selection light up in both — seam vertices show every UV copy across islands. Box/lasso select honors the X-ray toggle (visible-only vs through), double-click grabs a whole UV island or 3D connected part, and F localizes the highlight in the other view. Isolate on model paints any PBR map unlit on the geometry.

UV inspection: element selection synced between the UV view and the viewport

More features

  • Wide format support — GLB/GLTF (including DRACO- and meshopt-compressed, and KTX2/Basis textures), FBX, OBJ, USD/USDA/USDC/USDZ, STEP/STP, STL, PLY, DAE (Collada), 3DS, 3MF, VRML, Gaussian splats (SPZ/SPLAT/KSPLAT/SOG/3DGS PLY), and more
  • Sidecar textures — FBX/OBJ/DAE files that reference textures by relative path (e.g. a textures/ folder next to the model) load them automatically, even when the exported absolute paths are stale
  • Scene hierarchy — tree view with filtering, per-node visibility (with a one-click bulk show/hide of the filtered set), and selection outlines
  • Inspector — object transforms, geometry stats, material and texture details, with a zoomable texture viewport (including GPU-compressed KTX2) and a UV-map overlay that stays crisp at any zoom
  • Skin-weight visualization — recolor a skinned mesh by its bone weights, with modes for all bones, a single isolated bone, influence count, and weight normalization; the coloring deforms with the animation
  • Texture-map toggles — in Material/Rendered shading, switch each PBR map (base color, normal, metalness, roughness, AO, emissive) on or off in the lit render to isolate what each contributes
  • UV ↔ 3D element selection — Blender-style vertex/edge/face inspection with one selection mirrored between the zoomable UV viewport and the 3D view: hover sync, click/Shift/box/lasso select, double-click for UV islands or 3D connected components, seam-aware highlighting, and F to localize the highlight in the other view
  • Isolate a texture on the model — from the Textures tab, show any PBR map (base color, normal map, metalness, roughness, AO, emissive) unlit on the geometry; a viewport chip names the active special view with one-click exit
  • Blendshape controls — a Blendshapes tab (shown only when a scene has morph targets) with a slider per shape, grouped by mesh and optionally combined by name for ARKit face rigs; sliders track animated shapes live and let you pose them by hand
  • View options — wireframe overlay, skeleton overlay, grid/axes helpers, bounds, environment lighting, and a Y-up / Z-up axis toggle for CAD/robotics assets exported Z-up (also one click away in the shading HUD)
  • Measurement — a bottom-left scale bar for the current zoom, plus a ruler tool to click two points and read the distance
  • Drag & drop import — merge extra meshes into the current scene
  • Snapshot — export the current view to a PNG (camera button in the shading HUD, or a command)
  • Remembers your view settings — shading, grid, background, and other view toggles carry over to the next file you open, and persist across restarts
  • Performance HUD — FPS, triangle count, draw calls, memory

See DOCS.md for supported formats, features, usage, configuration, commands, development setup, and troubleshooting.

License

MIT — see the LICENSE file in this repository.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft