furrycat's Milkshape weapon modding tutorial
Basic weapon concepts
The requirements for a weapon in Milkshape 3D are very similar to those for 3D Studio MAX.
You need a closed mesh. Unlike the 3D MAX GSM plugins, Milkshape will not stop you from saving a mesh which isn't complete or which contains extraneous faces or vertices. You will know something is wrong when gsmhacking and/or SWAT3 crashes (although gsmhacking shouldn't crash and you should let me know if it does).
As with 3D Studio MAX, you need to apply materials to all the faces in your mesh. You must map textures to all faces except the magic MUZZLE and FLASHLIGHT polygons (if they are present). You must delete any unused materials and groups prior to saving the model. gsmhacking will complain about them.
You must create two joints such that the line connecting them runs parallel to the barrel of your gun. You must assign all of the vertices in the model to the first joint.
I repeat, you must assign all of the vertices in the model to the first joint. All of them. To the first one.
No ifs, no buts. You absolutely must do this. I worry that I am not making this point clear enough. If you don't assign all your vertices to your root joint your model will not work. End of story.
Even more important than assigning all vertices to the first joint (if it is actually possible for anything to be more important than that), you must align your weapon correctly in the world. This is so important it has an entire section of this tutorial dedicated to explaining it.
The MUZZLE, MAG and FLASHLIGHT materials (optional)
Exactly as with models made in 3D Studio MAX, Milkshape models can contain certain faces to which special materials are mapped. Read up on 3D MAX modding for more details.
In the next section I'll show you how to orientate your gun in the scene.