ValveSMD is a Python library designed to parse and edit .SMD files, which stores 3D mesh data to be compiled for use in Valve's Source engine.
Full documentation: https://pysourcesdk.github.io/ValveSMD/
ValveSMD is available on the Python Package Index. This makes installing it with pip as easy as:
pip3 install valvesmd
If you want the latest code or even feel like contributing, the code is available on GitHub.
You can easily clone the code with git:
git clone git@github.com:pySourceSDK/ValveSMD.git
and install it with:
python3 setup.py install
Here's a few example usage of ValveSMD
Parsing can be done by creating an instance of Smd with a path.
>>> from valvesmd import Smd
>>> smd = Smd('C:/modelsrc/tf/props_mining/rock005.smd')
A few functions are provided to perform basic transformations.
>>> from valvesmd import *
>>> SmdScale(smd, 2) # 2x scale
>>> SmdMirror(smd, 'x') # Mirroring on 'x', 'y' or 'z' axis
>>> SmdMatReplace(smd, 'wood', 'metal') # replace a material name (without $cdmaterial and extension)