There was already an import script for Blender for SMD files, but that one does not work anymore, because of updates in the Blender Python API. First I rewrote that script to match the new Blender Python API. But I didn’t quite understand the entire script, so I simply wrote my own, new script from scratch.
My script does pretty much exactly the same as the old one did, but for a change, it only works with Blender 2.44 or higher (only tested in 2.44). The script imports the mesh, and the bones (armature) from the SMD file, rigs the mesh using vertex groups and adds textures. To import textures, you need the to have all the images in the same directory as the SMD. To find out what textures you need, I have made a small script that scans through the SMD file and prints the name of those images.
I would like to thank ideasman42 for helping me with the Blender Python API. I don’t know the Blender Python API too well, and he helped me when I got stuck.
For more information about the script, read the README files in the ZIP archive.DOWNLOAD PAGE
Examples of the well-known character Alyx from Half-Life 2:
You need to have a copy of Half-Life 2 / Counter-Strike:Source to extract the models. I might write a tutorial on how to do that some other time, if people want to know how. (That guide would not be Blender-related, and for Windows users only.)