User talk:Tehrasha
Blender :: Animated Modelling for Source A Quick-n-Dirty Tutorial
Examples given in this tutorial were performed with Blender 2.56a, the Blender SMD Tools add-on written by Tom Edwards and should work with future releases of the Blender 2.5x series. Much of the basic modelling instruction also applies to older versions of Blender, but some of the menus have moved and keyboard shortcuts have changed. The SMD Tool will not work with older 2.4x series of Blender, and there is currently SMD export plugin which supports animation for that series.
Examples of model exporting and compiling in Source will use Team Fortress 2 as the platform, however, it should work with any Source based game. (CS:S, GMod, DoD, HL2, L4D, etc..)
This tutorial will not include detailed instruction on basic modelling and assumes that the user has at least a very basic knowledge of Blender and 3D modelling in general.
Software Requirements
{Blender 2.5} Free, Open source 3D modelling program.
Blender SMD Tools An animation supporting addon for Blender to import and export SMD files.
{SourceSDK} Software Developers Kit for Valve's Source engine.
{VTF Edit} Handy editor for Valve's VTM and VTF files.
{ConText} An enhanced text editor for the editing and running QC files to compile models.
Optional Software
{GIMP} Open source image editor for texturing, not covered in this tutorial.
{GCFScape} For browsing and extracting models/textures/sounds from Valve's GCF files.
Key reference
Key | |
---|---|
![]() |
Left Mouse Button |
![]() |
Right Mouse Button |
9 | 9 on the main keyboard |
Num9 | 9 on the Number Pad |
Building the Basic Model
Tab ⇆ To select object mode if not already there.
Right-click on the starter cube to select it.
A, DEL, F Select the entire cube, and delete it.
Add a new cylinder mesh to the project, and set its properties to 32 verticies, radius 4, depth 1, uncapped.
CTRL-TAB, E Select edge select mode![]()
Right-click on one of the edges of the top-most ring. CTRL-E, L Then use edge-loop to select all of the edges in the top ring. E, S, SHIFT-Z,
extrude and scale x/y much smaller E, G, Z, ., 5, ↵ Enter extrude and grab +z .5 E, S, SHIFT-Z,
extrude scale x/y a bit smaller ALT-M, A merge at center
CTRL-TAB, F face select mode{key|SHIFT-RMB}} manually select alternate outside faces E, S, 1, ., 2, ↵ Enter Extrude and scale by 1.2 times. Select Individual Origins for center of scale/rotation S, ., 5, ↵ Enter scale end faces

A, G, Y, 1, 0, ↵ Enter select all, grab and move out of the way
Repeat steps above with an uncapped cylinder of 16 sides, size 2, depth 1
, CTRL-NUM+..etc.. Right click one face or edge in the large gear, and press CTRL-NUM+ repeatedly until all of the large gear is selected.
G, Y, Move the large gear along the Y-axis until its teeth barely mesh with teeth of the smaller gear. Left-click to release the gear when its position is acceptable.
A, CTRL-N Select the entire mesh (both gears) and recalculate the 'Normals' so that all of the faces will be facing outwards.
Object>Transform>Geometry to Origin
SAVE FILE as tut.blend
Unwrapping, UV Mapping, and Texturing
Unwrapping can be a challenge. While you can select to have Blender automatically unwrap your model, Try to think how you would unfold the object if it were entirely made of folded paper.
Open a new windoid and set it to display the UVImage Editor
CTRL-TAB, E edge select mode
SHIFT-RMB select edges
CTRL-E, A mark seams
U, U unwrap
If your layout looks like complete chaos, add/remove seems until you can easily identify the pieces. These gears, and most mechanical items with lots of flat planes, are not too difficult to unwrap. Organic items, such as heads or animals are considerably more difficult.
Use G grab, and S scale to reposition and resize the UV islands in the UVImage Editor for optimal use of texture space.
export UV Layout as a 512x512 tut_uv.png

add material name the material tut_uv (no need for filename extension) add texture Texture Type: Image of Movie Open the tut_uv.png that we just exported Mapping Coordinates: UV center scene in camera and F12 to RENDER for a look ESC to return 3D window SAVE FILE
Rigging the Model
Cursor to origin NUM3 select view 3 Y/Z
ADD Armature> Single Bone This will create 'Armature Bone'
Z wireframe mode (easier to position bones)
Right click on the top end of 'Armature Bone' to select it
E, Z, 1, ↵ Enter This will extrude a new bone 'Armature Bone.000'
Deselect the 'Connected' checkbox to disconnect from its parent
G, Y, Grab and center the bone over the big gear. This will its axis of rotation. Click to release the grab and accept its current location
G, Z, -, 1, ↵ Enter This will embed the bone into the gear (not necessary but cleaner)
Right click on the original 'Armature Bone' to select it
E, Z, 1, ↵ Enter This will extrude new bone 'Armature Bone.001'
Deselect the 'Connected' checkbox to disconnect from its parent
G, Y, Grab and center the bone over the smaller gear.
G, Z, -, 1, ↵ Enter Embed the bone into the gear (not necessary but ...)
Right-click the mesh to select it
SHIFT-RMB Shift-right-click the armature
CTRL-P Parent the mesh to the armature with empty groups
Tab ⇆ Switch back to edit mode
, CTRL-NUM+..etc.. Right click one face or edge in the large gear, and press CTRL-NUM+ repeatedly until all of the large gear is selected.
Under Object Data, set the vetex group as Bone.000 and click Assign
, CTRL-NUM+ Right click one face or edge in the small gear, and press CTRL-NUM+ repeatedly until all of the small gear is selected.
Set vetex group as Bone.001 and click Assign
SAVE FILE
Lets check out our work...
select bone.000
R, Z, move mouse and only the large gear should spin in the z-axis, to ignore changes
select bone.001
R, Z, move mouse and only the small gear should spin in the z-axis, to ignore changes
Excellent!
Animating the Model
The large gear is going to spin in the opposite direction and at 1/2 the speed of the smaller gear. For sake of ease and sanity with rotating objects, set the animation stop at frame 360.
Change screen layout from Default to Animation.
Right click on the Armature to select it.
Tab ⇆ To get to Pose mode if not already there.
Set Active Keying to 'Rotation'
Large Gear Clockwise
Set frame counter to Frame 1
Select bone.000
Set Framecounter to Frame 91 (90 degrees +1)
R, Z, 9, 0, Rotate +90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 181 (180 degrees +1)
R, Z, 9, 0, Rotate +90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 271 (270 degrees +1)
R, Z, 9, 0, Rotate +90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 361 (360 degrees +1)
R, Z, 9, 0, Rotate +90 degrees on the Z-axis and set a ROT keyframe.
Small Gear Counterclockwise
Set frame counter to Frame 1
Select bone.001
Set Framecounter to Frame 91 (90 degrees +1)
R, Z, -, 9, 0, Rotate -90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 181 (180 degrees +1)
R, Z, -, 9, 0, Rotate -90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 271 (270 degrees +1)
R, Z, -, 9, 0, Rotate -90 degrees on the Z-axis and set a ROT keyframe.
Set Framecounter to Frame 361 (360 degrees +1)
R, Z, -, 9, 0, Rotate -90 degrees on the Z-axis and set a ROT keyframe.
SAVE FILE
But wait! The smaller gear should spin twice as fast!
Uncheck all of the keyframes for Bone.001
Select Bone.002
Right-click to select one of its f-curves
A, CTRL-C Select all and copy the keyframes
Move framecounter to 362
CTRL-V Paste the copy of those keyframes after the existing frames.
A, S, X, ., 5, ↵ Enter Select all and scale the X axis by .5
G, X, -, 1, 8, 0, ↵ Enter Grab shift the f-curve 180 degrees to the right.
Return framecounter to Frame 1
Play animation.
SAVE FILE
Getting the Model into Source
Exporting
Tab ⇆ Make sure Blender is in Object mode.
Right click on the mesh (the gears)
SHIFT-RMB The shift-right-click on the Armature
File->Export->SMD->selected
Voom.
Exit Blender

QC, File Names, and File Locations
Correct file paths and naming is probably the cause of the majority of failures in compiling QC files.
Models :: Materials :: SMD ::
My model compiles, but the texture doesnt show up!? My model is invisible!?
Example:: QC FILE SMD FILE File Locations
Compiling and Viewing
See Also
- Blender
- Modelling props with Blender
- Blender Modelling Walkthrough
- Is Blender 3D Good for Source? - How to Start
- Model Creation Overview
External Links
{Interlopers -- QC Compiling Tutorial using ConText}
--Tehrasha 02:59, 5 February 2011 (UTC)