Model Viewer

From Valve Developer Community
Jump to: navigation, search
A screenshot of HLMV.

HLMV (Half-Life Model Viewer) is the program used to preview 3D models created for Source, specifically Source .MDL files. It can be also used by modellers to refine a .QC file by finding the exact origin and physics constraints and generating a .QC with the right values. You can preview and, in some cases, edit many aspects of your 3D model from within Model Viewer.
It is accessible through the Source SDK.

Note.png Note: The current version is v2.0.

The original Half-Life Model Viewer

Up until 1999, HLMV was developed by chUmbaLum sOft for previewing Goldsrc models, the latest version at that time was 1.25 but only 1.24 was released as a binary.

Jed's Half-Life Model Viewer

Development of HLMV was continued by Neil "Jed" Jedrzejewski, who started a new branch with the original authors blessing, building on the 1.25 code using version numbers 1.0 to 1.36. This version is widely known as "Jed's HLMV" or "JHLMV".

The primary motivation for the branch was to add support for 1-bit transparent textures when previewing models. During development of JHLMV features such as wire-frame overlays, viewing and exporting of UV maps, view-model weapon origin view, previewing animation events and loading files from GCF archives were added. Supports was added for models created for the PS2 version of Goldsrc. Private/experimental versions of JHLMV also include support for models for the Dreamcast version of Goldsrc and ragdoll physics.

JHLMV is still supported although development is on-hold pending completion of other projects.

Note.png Note: HLMV/JHLMV is only compatible with Goldsrc model files

HLMV for the Source engine

Valve ship their own version of HLMV with the Source SDK specifically for viewing models created for the Source engine. It appears to be based on the original HLMV 1.22 codebase but re-worked to use Source's own 3D viewport and material system.

It's unclear under what license it is used/distributed but Source HLMV still provides a credit and link to chUmbaLum sOft in its About menu. Several features of the Source HLMV have been copied from JHLMV.

Each iteration of the Source engine has a slightly updated version of the model viewer giving access to newer or enhanced features of the respective engine.

For the Source HLMV settings such as rendering options and background color is saved in the Windows registry and stored on a per model basis, unfortunately there doesn't appear to be a way to set the standard options.

Note.png Note: The Model Viewer can no longer be started from the Source SDK laucher after the SteamPipe update. However it can be launched manually (For example,the hl2 model viewer is usually located under "\steam\steamapps\common\half-life 2\bin")

Source HLMV features

  • Normal mapping
  • Specular mapping
  • Generating QC code for Hitboxes, Physics, Attachments, IKRule, Event
  • Visually displaying vertex weighting.
  • Animation blending
  • Pose parameters
  • LOD models
  • Flex animations


  • LMB drag in the center of the viewport will orbit the camera.
  • LMB drag on the edge of the viewport will roll the camera.
  • Ctrl+LMB drag will orbit the light source.
  • RMB drag will dolly the camera back/forward.
  • Shift+LMB drag with pan the camera left/right up/down.
  • F5 will refresh the textures if they have been recompiled.
  • U will toggle UV chart view
  • T will toggle textured view.
    Note.png Note: Normal mapping for textures is not checked on by default.

Creating/Modifying Hitboxes

Click through to learn to Create and Modify hitboxes with HLMV.


  • If you find that HLMV is missing textures, such as floor, background, and cubemap, extract a set from a working SDK. Find them at materials/hlmv/ (e.g. in source materials.gcf).
  • HLMV has had a very wobbly history. Without warning it sometimes no longer works because of changes/updates done to the Source SDK.
  • Any .jpg model thumbnail made using Photoshop or ImageReady will crash HLMV.
  • The normal map flag can be tricky to switch on depending on your graphic card.
  • Wireframe mode was broken shortly since after the release of the Source SDK, rendering the default texture (purple/black squares) over the model. To add injury to the insult, the flat shaded mode that provided some of the same functionality, was removed between Episodes One and Two. In later engine builds, the issues with wireframe mode has been resolved.
  • When selecting a submodel category, the second submodel is displayed in the 3D view, but the name of the first submodel is still being displayed as the selected in the dropdown menu (also present in Goldsrc versions).
  • When moving from folder to folder the scroll bar doesn't reset.
  • Texture resolution on models may be displayed at 1/4 of it's actual resolution (Mipmap 1) on NVIDIA graphics cards.
  • When viewing models using materials that use "$cloakPassEnabled" "1" the triangle count will double what it actually is due to a calculation bug.
  • Using Options > Make Screenshot... doesn't seem to produce effective screenshots.
  • Since the Steampipe update, opening folders with the File -> (Steam) Load model... browser will give an error if the corresponding folder does not exist in the game's mod directory. A workaround for this is create the same folders in your game directory with the same structure as the game's VPK files.

See also

External links