Team Fortress 2

Team Fortress 2

901 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
< >
ThE_MeDoK Feb 4 @ 3:47am 
Guys, take a look my guide, especially who played Team Fortress 2. No need to Rate up. Rate it doesn't matter for me, you can Rate all you want, but thanks.
[.S.H.T.] Spikeman Nov 18, 2016 @ 7:38pm 
My first item is coming along great, but do you know how to add Decal Tool compatability to the items?
KaidemonLP The Juice King Jun 7, 2016 @ 8:28am 
Ive searched the internet and i simply coudnt find a tutorial on it so im asking you. How to make a transparent texture like glass?
Sinful Creature Jun 5, 2016 @ 3:47am 
King of Slumberland's Conductor Hat, hey? :^)
mirdza May 14, 2016 @ 1:29pm 
Makes no difference other than zip file is like a portable version.
Jangster23 May 14, 2016 @ 8:57am 
Does this tutorial still apply to today, and if so, should I download the Blender installer or Zip file?
Capp Mar 27, 2016 @ 10:51pm 
Oh yes, we're so strange that we drive on the right side of the road.
raphigadaff Mar 19, 2016 @ 7:44am 
HJ is a strange name, people assotiate this name with Hitler Jugent ,this is german and is like pathfinder for nazis.But germans are strange
waterfromdust Jan 12, 2016 @ 9:45am 
right, I added a skin modifier (i'm in 3ds max). but I think I got it figured out using the Valve itemtest compiler. Thanks for the quick reply. It'll be up on the workshop soon!! yay!
Randomness Jan 12, 2016 @ 1:18am 
@waterfromdust I would presume you didn't weight-paint the hat, so it is defaulting to the center of the model.