SMD Collision Mesh Tool

Posted May 12, 2009
Last Updated May 1, 2013

Anyone who has gotten into level design for various Valve Source games (Half-Life 2, Counter-Strike: Source) may have become overwhelmed with all that goes into making a decent custom map. When I recently delved back into mapping (I have made several maps for Counter-Strike 1.6) I was, on one end happy that there are so many tools to make cool maps, and on the other end frustrated with the often cryptic documentation on the Valve Developer Documentation Wiki.

One of the issues that I repeatedly had when I first started making models was that they would invariably create warnings in player consoles regarding missing collision meshes. But the documentation on collision meshes gave very little information on making collision meshes except that you should make collision meshes very low-polygon. Even after I figured out the process of making a collision mesh, I found errors in the model compile process—the Valve model compiler would say things like bad smoothing groups.

Eventually, I dug around and found the problems. Of course, some of the solutions were on forums three clicks away from the Valve developer site. What I came to learn was that collision meshes should be made of simple individual elements*, should have a material with a bitmap in the diffuse channel, and each element must have a unique smoothing group. What I also found was that the second two steps seemed totally pointless.

So I enlisted the aid of Andrew Penry. While neither of us had ever used MaxScript before, we were able to put together the Wall Worm Collision Mesh Prep Tool for 3ds Max. This tool automates some of the process of making collision mesh models in 3ds Max that are targeting the prop_static entity in various source games. After applying it to a model, it is ready to export to SMD and compile for the purpose of being a $collisionmodel. While it doesn't brew your coffee for you, it does help optimize your time.

I may very well add a short video tutorial to this page on using the tool. But until then, you can get instructions on using it at .

*Note that because I am speaking from the point of view of a 3DS Max user, the word Element refers to the level of sub-objects in an editable poly object. Other levels include vertex, edge, polygon.

2013-05-01 This tool is now retired. It was updated and integrated into the Wall Worm Model Tools. You can now find the functionality of this tool in the Process CM function in the Collision Model tab of Wall Worm Model Tools; you can also find this functionality in Hull Helper that is part of Wall Worm.

Collision Models

Articles on making a collision hull for the Source Game Engine with 3ds Max.

  1. SMD Collision Mesh Tool
  2. Making a Collision Model
  3. Wall Worm Model Tools


No HTML Tags are permitted.

Wall Worm plugins and scripts for 3ds Max