.SMD

SMD File

Valve Studiomdl Data File
Ask a question
QUICK ANSWER

An SMD file is most commonly a Valve Studiomdl Data file - a plain ASCII text file defining a 3D model or animation for Source Engine games (Half-Life, Counter-Strike, Team Fortress 2). Open it in Blender with the Blender Source Tools addon, or in any text editor for inspection. SMD is also used for Sega Genesis ROM images from the Super Magic Drive device - open those in RetroArch or Kega Fusion.

Developer: Valve Corporation Category: 3D Image Files Open standard MIME: text/plain
OPENS ON Windows macOS Linux
Related: .DCM · .STEP · .SKP · .STP

On this page

19k+ extensions indexed
Last reviewed Aug 10, 2026

Not sure what your file is?

Drop any file into our identifier - we read just the first bytes to name the format.

Identify a file

What is the SMD file format?

An .smd file is a Studiomdl Data file - a plain ASCII text format used as the intermediate representation for 3D models and animations in Valve's GoldSrc and Source engines (Half-Life, Counter-Strike, Team Fortress 2, Portal). The format has been in use since Half-Life's development in 1998 and remains central to Source engine modding.

An .smd is never loaded directly by the engine. It is an intermediate in a two-step compile pipeline: a .qc script references one or more .smd files (one reference mesh, one per animation sequence), and studiomdl.exe compiles them into the binary .mdl file the engine loads.

The file begins with the literal line version 1 and contains up to four named sections:

  • nodes - the bone/joint hierarchy
  • skeleton - per-frame bone transforms (keyframe animation data)
  • triangles - mesh geometry: material name followed by vertex triplets giving bone index, XYZ position, surface normal, and UV coordinates
  • vertexanimation - optional flex/morph target data for facial animation

Because it is plain ASCII, .smd files can be edited in any text editor and tracked in version control. The Blender Source Tools addon exports .smd directly from Blender, which is the standard modding workflow. The DMX format is preferred in modern Source 2 tools but .smd remains widely supported.

Security & safety

RISK: LOW

SMD is plain ASCII text with no executable code. Safe to open in any text editor. SMD files from untrusted sources may reference copyrighted game assets - legal concern rather than a security risk.

Format details

in a nutshell
FULL NAMEValve Studiomdl Data Fileaka SMD model file, Source Engine model
DEVELOPERValve Corporationsince 1998 (GoldSrc engine, Half-Life development)
MIME TYPEtext/plain
TYPEplain text 3D model/animation intermediate format (ASCII)
STANDARDOpen · royalty-free
This extension is also used by…
  • Sega Genesis / Mega Drive ROM Image (Super Magic Drive format) - Interleaved ROM dump format produced by the Super Magic Drive cartridge copier; differs from the plain binary .bin/.gen format by having a 512-byte header and byte-swapped 16 KB blocks. Opened by Kega Fusion, Genesis Plus GX, RetroArch emulators.
  • SubStation Alpha Subtitle Script - Some older SubStation Alpha subtitle files reportedly used .smd; the standard extension for SubStation Alpha is .ssa / .ass.

Programs that open SMD files

Windows4 apps
Blender (with Blender Source Tools addon) Open-source Install Blender Source Tools addon, then File > Import > Studiomdl Data (.smd). Edit mesh and bones, then export back to .smd.
studiomdl.exe (Source SDK / game SDK) Free Command-line compiler: studiomdl.exe -game <gamepath> model.qc - reads SMD files referenced by .qc and outputs .mdl
Notepad++ / Visual Studio Code Open-source Open directly - SMD is plain ASCII text. Inspect nodes/skeleton/triangles sections.
Half-Life (via game tools) Paid Half-Life itself does not open SMD files; SMD is compiled to MDL first. Remove from db.
macOS1 app
Blender (with Blender Source Tools addon) Open-source File > Import > Studiomdl Data (.smd)
Linux1 app
Blender (with Blender Source Tools addon) Open-source File > Import > Studiomdl Data (.smd)

Technical details

deep spec
FormatPlain ASCII text (7-bit; contains no binary data)
File identifierFirst line must be the literal text "version 1"
RoleIntermediate format only - never loaded by the engine directly
Compile toolstudiomdl.exe (Source SDK / game-specific SDK) compiles .smd plus a .qc script into a binary .mdl file
Sectionsnodes (bone hierarchy), skeleton (keyframe transforms), triangles (mesh geometry), vertexanimation (morph targets, optional)
Vertex dataEach vertex line carries: bone index, XYZ world position, surface normal XYZ, and UV texture coordinates
Animation dataBone transforms stored per frame in the skeleton section; one .smd file per animation sequence
Material referenceEach triangle group in the triangles section opens with a material or texture name string
MIME typetext/plain
Typical file size10 KB - 10 MB; complex high-poly animated models at the high end
Engine supportGoldSrc (Half-Life series), Source (HL2, CS:S, TF2, Portal), Source 2 tools via Blender Source Tools
Authoring toolBlender with Blender Source Tools addon; Crowbar tool for decompiling and recompiling .mdl to .smd
EditabilityPlain text format: readable and editable in any text editor, diffable and trackable in version control systems
Released1998 (GoldSrc engine, Half-Life development)
Latest versionSMD version 1 (unchanged; version 3 adds extra UV layers in Source 2 variants)
Open standardYes · royalty-free
Specificationdeveloper.valvesoftware.com

SMD conversions

Community Q&A

asked by users
Ask a quick question
Get help from people who work with SMD files. Be specific - include your system and software version.
No account needed · answers usually within a day

No questions yet - be the first to ask about SMD files.

Frequently asked questions

How do I open an SMD file?
Any text editor works for inspection. For 3D work, use Blender with the free Blender Source Tools addon (File > Import > Studiomdl Data).
How do I compile an SMD file into a game model?
Create a .qc script referencing the .smd files, then run studiomdl.exe from your game's Source SDK. See Valve Developer Community wiki for the full workflow.
My SMD file is a Sega Genesis ROM - what emulator should I use?
Use RetroArch with the Genesis Plus GX core, or Kega Fusion (Windows). The .smd ROM format has a 512-byte header and interleaved bytes; most emulators handle it automatically.
Can I convert SMD to FBX or OBJ?
Yes - import the SMD into Blender using Blender Source Tools, then export to FBX or OBJ.
What is the difference between .smd and .mdl?
SMD is the human-readable source file (ASCII text) created by artists. MDL is the compiled binary that the Source Engine loads. You always author in SMD and compile to MDL.

References

1Studiomdl Data - Valve Developer Communitydeveloper.valvesoftware.com
2StudioMDL (Source) - Valve Developer Communitydeveloper.valvesoftware.com

Keep exploring

across the database

Top extensions this week

1.AQQAQQ Instant Messenger File
2.BINCD/DVD Disc Image (BIN/CUE)
3.MDMarkdown Document
4.PARTPartial Download File
5.RPMSGRestricted Permission Message
6.CRDOWNLOADChrome Partial Download File
7.NOMEDIAAndroid No-Media Marker File
8.PRDXSoftMaker Presentations Document
9.PRO6XProPresenter 6 Bundle File
10.SWFSmall Web Format (Shockwave Flash)

Related extensions

.DCMDICOM Medical Image
.STEPSTEP - Standard for the Exchange of Product Data (ISO 10303)
.SKPSketchUp Document
.STPSTEP - Standard for the Exchange of Product Data (ISO 10303), .stp spelling
.MTLMaterial Template Library (Wavefront)
.MAX3ds Max Scene File (Autodesk 3ds Max)

Free file tools

An in-browser file identifier and image converter - everything runs on your device.

Open the toolbox

Browse file extensions A-Z