Team Fortress 2

Team Fortress 2

940 ratings
HellJumper's NEW TF2 Modeling Tutorial for the Steam Workshop (Beta Import)
This is a new 3D modeling tutorial for the new TF2 beta importer. Since my old tutorial covered the basics of modeling and texturing, I will not be going into detail about those. Instead this tutorial focuses on the new beta import system. In the future I will cover how to get good looking backpack icons, source filmmaker renders, and painted items.

If you want to visit my old modeling tutorial for the basics to using Blender, you can find it here.
Comprehensive Video Tutorial

Required Programs:

In the video I mention MDLdecompiler for use in decompiling .mdl files. However, this program has not been updated in quite a while. Instead, Crowbar is another program I have found to be really useful in decompiling .mdl files. It functions similarly to mdldecompiler (so it should be self-explanatory in terms of how to use it).
Supplementary Picture Tutorial
This picture-based tutorial should be useful for quick reference. It obviously doesn't go into as much detail as the video does, but it's great for people who watched the video at least once and want to quickly go back to look at things.

Step 1: Getting Prepared
Gather the required programs (listed above) and create a file structure to stay organized. Remember: organization is the key to success.

Determine what character you want to make an item for (hat or misc item), and using GCFscape, extract the .mdl and associated files from the vpk. Using the fixed version of MDLdecompiler, decompile the .mdl into a .smd file which you can then import into Blender.

Step 2: Making the Model

Open up Blender and import the .smd file corresponding to the TF2 character. The decompiler most likely produced many .smd files, but the correct file should be relatively obvious to find (it's usually around 2 mb in size). Make sure to import your character using the Y-axis as the up direction.

Begin creating your model using the imported character model as a reference. Don't forget to use smooth shading and edgesplits to ensure that your model has both smooth surfaces and hard edges where necessary (other programs refer to edgesplits as smoothing groups).

Notice in the image to the right how the model has portions that are smooth (the top of the hat) and portions that are distinctly sharp such as around the brim of the hat. Getting a good balance between smooth and sharp edges can really bring out detail in your model.

Step 3: UV Unwrapping

When you are satisfied with the model's design, unwrap the model with whatever method is best. For cylindrical objects, marking seams is the best way to unwrap these objects. For more complicated shapes, you might want to use projection unwrapping. Regardless, both methods are found under the UV unwrapping menu in edit mode (hotkey: u).

Make sure to alter the UVs in the UV layout screen in a manner that best suits your model. In the tutorial I mentioned that I wanted part of my hat to be unwrapped flat, so by selecting rows of vertices and pressing "w", I was able to align vertices in a rectangular fashion (align x, align y).

Step 4: Baking

When you are done unwrapping the model, create a blank black image 2-4 times larger than the final size of your texture which will be used to bake shadows onto your base texture.

In the World Tab, make sure to do the following:
  • Check Ambient Occlusion ON
  • In the "Gather" subheading choose "Approximate"
  • Check Pixel Cache ON, and slide the correction to 1.00
  • Change the error to 0.250

In the Render Tab, make sure to do the following:
  • In the "Bake" subheading, make sure "Bake mode" is set to "Ambient Occlusion"
  • Check "Normalized" ON
  • Slide the margin to 8

Now click "Bake" to bake your AO map. Save this as a .tga file, and make sure to export the UV layout as well (as a .png) by going to UVs > Export UV Layout.

Step 5: Texturing

Texturing for TF2 is both easy and fun. Open your AO bake in photoshop and make sure to set the layer properties to "multiply". Make sure this layer is always on top (unless you have a UV layout temporarily to be able to see your UVs). Make sure all your texturing layers go below your bake. Refer to Swizzle's TF2 Texturing guide[] for more information on making quality TF2 textures.

When your texture is completed, save this as a .tga (make sure you resize it down to 512 x 512), and reapply the texture in the UV layout screen to see a preview of your texture on the model in Blender.

Step 6: Rigging your Model
Select your model first, and then shift+select the bone rig second (armature). Press ctrl+p, and choose "With empty groups" to parent your model to the armature. Now select only your model, go into edit mode, select all the vertices in your model, find the bip_head bone in the Object Data tab under the Vertex Groups subheading, and click "Assign" (make sure the weight is set to 1.000). This will assign all the vertices in your model to the bip_head bone. If your model is not a hat, make sure to assign your model to the correct bone.

Go back into object mode, select your model, and go to the Object tab. Give your model a name in the textbox with the orange cube (Unique data ID). This will be your .smd filename. With your object selected, go to file > export > source engine (.smd) to export your model as a .smd file. While you're at it, make sure you generate a LOD model that is 700 tris or less. Make sure to give this a unique name so you don't accidentaly overwrite your default model.

Step 7: Compiling your Model

Open TF2, click on the Workshop button, and create a new workshop entry. Click "Import Beta!" to get to the new beta import screen. Give your model a name, and choose what category it belongs in (e.g. engineer hat). Import your .smd files making sure you import at least 1 LOD model below 700 tris. If your model is already 700 tris or less, there is no need to make LODs.

Generate a backpack icon using the HLMV (tutorial in the FAQ section below). Make sure that the icon sits on a black background and fits in a 512 x 328 region. The entire image should be 512 x 512, and the alpha channel should be all black expect for the parts corresponding to your item.

Finally, choose the appropriate texture option (Team colored, paint, etc.), and import your .tga texture files. Remember: texture files must be 512 x 512 or the importer won't accept them. Choose the appropriate vmt parameters (most of the time the defaults should be fine), and click OK.

Preview your model to see if everything worked out fine. Once satisfied, click "Verify" and then "Finalize" to zip your model and get it ready to upload to the workshop. On the next screen, upload a workshop image that will be featured on the workshop, give your item a title, and describe it.

Congratulations, you're done! Give yourself a pat on the back, and let other users begin upvoting your creation on the workshop!

If you found my guide useful, consider supporting me by rating up the item featured in this tutorial on the Steam Workshop. Thanks!
Frequently Asked Questions
Q: Do I need to install source SDK?

A: Yes. You need it in order for MDLdecompiler to work properly. Just install it by opening Steam, go to your library, go to the tools tab, and then install the "Source SDK". You must run the Source SDK at least once to get the client-side files to unpack properly. Also, you might need to press the "refresh content" button when using it for the first time. Just open the SDK up and there should be a button in the middle for that.

Q: MDLdecompiler won't work!

A: First of all, make sure the Source SDK is installed (see above). Place the MDLdecompiler program in your C:\Program Files\Steam\steamapps\common\SourceSDK\bin\ep1\bin folder in order for it to work properly. You may wish to put a shortcut on your desktop for ease of access. In addition, MDLdecompiler needs to have all the check boxes unchecked.[]

Q: How do I create backpack icons?

A: Check out the following guide:

Q: How do I make items paintable?

A: I put together a steam forum post about it here:

Q: How do jiggle bones work in Blender?

A: Check out this video: Credit to SgtR007_1
< >
Aesthetic Bagel Mar 17 @ 9:22am 
It's been awhile, but does anyone happen to know where the weapon model SMDs are located? Can't find them anywhere, and I require them in order to continue.
Joey41114 Dec 23, 2017 @ 8:08pm 
Wait a sec. I found the problem. I was using the model in the directory:
"C:\Program Files (x86)\Steam\steamapps\common\sourcesdk_content\tf\modelsrc\player\scout\parts\smd\"
...instead of the model I SHOULD have been using, located at:
"C:\Program Files (x86)\Steam\steamapps\common\sourcesdk_content\tf\modelsrc\player\scout\parts\dmx\"
It's the VERY LAST FOLDER that got me. Just gotta remember to use DMX, not SMD. LOL
Joey41114 Dec 23, 2017 @ 7:45pm 
Whenever I try to hit "preview" it tells me:
ERROR: unknown attachment link 'bip_head'
ℳagical ♪★✘ Nov 18, 2017 @ 3:36am 
mod link texture class download please
Fliby Sep 29, 2017 @ 4:57pm 
Okay, When I imported my model, It worked out.

But when I went into the preview, the hat was behind the character in any stance but bind.

Is this a problem? Or is this normal?
Byeah Jul 10, 2017 @ 9:34am 
eh I have 1 question, so I try to learn with blender 2 weeks ago and made a model for medic's melee weapon, but in blender there's a material tab and I made some part of the model with the material feature for give the mirror and glass effect, do I need to unwrap and bake that part? I mean if I need to unwrap that part, how do I texturing mirror and glass effect with drawing with photoshop or other software?
Tux the Penguin Jun 27, 2017 @ 8:27pm 
could someone please upload the models for the different classes to dropbox or google drive? All of the programs he uses are for windows only and I use linux. Yes I have tried wine it does not work. yes I know about this guide it did not work for me.
KaidemonLP The Juice King Jun 24, 2017 @ 12:00am 
If you want it to be a class try importing the class model over your model and use the class model as a reference
Durdge-o Jun 23, 2017 @ 6:28pm 
Any help for rigging a full model?

Trying to rig this:
Lunre Jun 17, 2017 @ 12:08am 
Do you need all the programs, or just 1, like Blender, or what?