From Valve Developer Community
Jump to: navigation, search

Meshes represent the render geometry of the model.


  • To toggle mesh display go Display > Polygons.



  • Meshes are accessible via the outliner, and are found under the Mesh List item.
  • Select a mesh item to edit in the Property Editor.

Data Structures

The vmdl hitbox data looks like this

CVmeshList m_meshList = CVmeshList
        CVmesh[] m_meshList = 


A list of CVmesh elements

Note:A vmdl can have multiple meshes. Mesh groups and LOD groups will refer to these meshes by name.


In a vmdl a mesh looks like this:

	string m_meshName = "test"
	string m_meshFile = "models/test/fbx/test.fbx"
	string m_materialSearchPath = ""
	bool m_bSkinParentedObjects = false
	bool m_bExpensiveTangents = false
	bool m_bExpensiveVertices = false
	CVmorphInfo* m_pMorphInfo = NULL

Attribute Friendly Name Description Type Default Value
m_meshName Mesh Name The name of the mesh string
m_meshFile Mesh File content relative path to the external mesh file string
m_materialSearchPath Material Search Path content relative path to an additional search path for materials string
m_bSkinParentedObjects Skin Parented Objects rigid bind meshes that are parented to other objects bool true
m_bExpensiveTangents Use Expensive Tangents Use uncompressed tangents when compiling bool false
m_bExpensiveVertices Use Expensive Vertex Welding Reduce the vertex weld threshold when compiling bool false
m_pMorphInfo Morph Info Override default morph compiling options CVmorphInfo*
Note:Expensive tangents and vertex welding may increase the visual look of the model in some cases, but will result in larger compiled meshes.
Note:Morph Info is not needed for the majority of models.