SFM Rigging Guide: IK Rigs and the rig_biped_simple Script

Quick Answer

SFM rigging adds control handles that drive a model’s bones through constraints, so one foot handle moves the whole leg. Right-click the character’s animation set in the Animation Set Editor, open the Rig submenu and pick rig_biped_simple. The script builds IK chains for the arms and legs, adds knee and elbow direction handles, and hides the raw bones.

01

Load a biped model

Add the character to your shot so it gets its own animation set in the Animation Set Editor.

02

Open the Rig submenu

Right-click the animation set, hover over Rig and choose rig_biped_simple from the list of installed scripts.

03

Check the new groups

Look for RigBody, RigArms and RigLegs in the control list. Those groups mean the script found the bones it needed.

04

Pose with handles

Move the hand and foot handles to place limbs, then use the knee and elbow handles to aim each bend.

What a Rig Actually Does in Source Filmmaker

Every model you load into SFM arrives with a skeleton of bones. Out of the box, you animate those bones directly: select, rotate, key. That works, but posing a full body this way is slow because every joint is set by hand.

A rig script adds a second layer. It creates new handles, usually named with a rig_ prefix, and constrains the real bones to them. You move and key the handles; the bones follow. That is why a rig changes how you animate without changing the model file itself: nothing is recompiled, and the same model can be rigged in one session and left as plain bones in another.

Rig scripts are small Python files. SFM looks for them in this folder inside your install:

SourceFilmmaker\game\platform\scripts\sfm\animset\

The names in the right-click Rig submenu match the file names in that folder, minus the .py extension. Drop a new script there, restart SFM, and it appears in the menu. If you installed SFM somewhere other than the default Steam library, our Source Filmmaker install guide shows where the game folder lives.

How to Apply rig_biped_simple

rig_biped_simple is the general-purpose biped rig that ships with SFM, and it is the script most Valve character tutorials use. Valve’s own guide to making custom rigs starts from a copy of it, which tells you how central it is to the tool.

The Menu Path

Find the character in the Animation Set Editor and right-click its animation set (the character’s name, not one of its sliders). Hover over Rig and click rig_biped_simple. The script runs immediately, with no dialog or settings.

Apply the rig before you start keying the body. Attaching a rig bakes the model’s current motion into the new handles, and SFM community veterans warn that adding and removing rigs repeatedly loses keyframes. Rig first, animate second.

What Changes in the Animation Set Editor

After the script runs, the control list looks different. New groups appear, typically RigBody, RigArms and RigLegs, with separate right and left subgroups for each limb. The original Body, Arms, Legs and Root bone groups are hidden, because the rig now drives those bones.

Hidden does not mean deleted. Open the gear menu at the top of the Animation Set Editor and turn on the option to show hidden controls. The bone groups reappear, and you can unhide a specific group from its own right-click menu. Face sliders are not touched by the rig, so lip sync and expressions work the same way as before. Our SFM lip sync tutorial covers that side of the character.

SFM rig_biped_simple control map showing rig_pelvis, rig_hips, hand, elbow, knee and foot handles on a biped skeleton
SFM rig_biped_simple control map showing rig_pelvis, rig_hips, hand, elbow, knee and foot handles on a biped skeleton.

What rig_biped_simple Creates

The script builds one handle per major body part, then links them into a hierarchy: moving the root carries everything, while a hand or foot handle affects only its limb.

Body and Spine Controls

rig_root sits at the base and moves the entire character. rig_pelvis moves the torso while the hands and feet stay where they are, which is how you make a character crouch or shift weight without the feet sliding. rig_hips rotates the pelvis without dragging the spine along, useful for a walk cycle’s hip sway. The spine, chest, neck and head handles behave much like the original bones.

Arm and Leg IK Chains

Each limb gets an IK solver. For the legs, rig_foot_L and rig_foot_R are the targets: the solver bends the thigh and calf so the foot reaches the handle. For the arms, rig_hand_L and rig_hand_R play the same role for the upper arm and forearm. rig_collar handles shrug and drop the shoulders.

Each chain solves two bones plus an end point, which is why tails and long multi-joint limbs do not rig cleanly with a biped script.

Knee and Elbow Direction Handles

An IK solver knows where the foot should be, but it does not know which way the knee should point. rig_knee and rig_elbow answer that. Each one is a small handle placed in front of the knee or behind the elbow, and the limb bends toward it. Other 3D packages call this a pole vector. In SFM the knee handles are parented to the feet, so they travel with each step, and the elbow handles follow the collars.

Foot Roll and Fingers

If the model has heel and toe pivot attachments, the script also adds a foot roll slider for each foot, which peels the heel off the ground before the toes. Models without those attachments simply skip this control. Fingers are not put on IK. They stay as ordinary bone controls, grouped under each arm, so you curl them one joint at a time.

HandleControlsTypical use
rig_rootWhole characterPlacing the character in the scene
rig_pelvisTorso position, limbs stay plantedCrouches, weight shifts, bounce
rig_hipsPelvis rotation onlyHip sway in walks and idles
rig_foot_L / rig_foot_RLeg IK targetPlanting feet, steps
rig_knee_L / rig_knee_RKnee bend directionKnock-kneed or bow-legged stances
rig_hand_L / rig_hand_RArm IK targetGrabbing props, leaning on surfaces
rig_elbow_L / rig_elbow_RElbow bend directionFlaring or tucking the arms
rig_collar_L / rig_collar_RShoulder positionShrugs and reaches

Bone Naming: Why rig_biped_simple Fails on Some Models

The script does not analyze a skeleton. It searches for bones by exact name, and if a required bone is missing, it stops with an error in the console.

The names it looks for follow Valve conventions. Half-Life 2 style models use ValveBiped.Bip01_ names, such as ValveBiped.Bip01_Pelvis and ValveBiped.Bip01_L_Thigh. Team Fortress 2 models use a shorter bip_ scheme, such as bip_pelvis and bip_knee_L. The script also accepts plain Bip01_ names. Valve’s rig documentation lists the bones a biped rig needs: root, pelvis, upper leg, lower leg, foot, collar, elbow and hand. Spine and neck bones are optional.

That explains most “the rig did nothing” reports. A model ported from another game, or exported from a tool that names bones LeftUpLeg or thigh.L, will not match. You have three options:

  • Check the model’s download page. Many community ports ship with their own rig script, which goes in the same animset folder.
  • Copy rig_biped_simple.py, rename the copy, and edit the bone names it searches for. Valve’s custom rig guide walks through exactly this edit for a Portal 2 robot.
  • Rename the bones to Valve names before compiling. If you are porting the model yourself, do this in the Blender to SFM stage, or decompile an existing model with Crowbar, fix the names and recompile.

Community authors have also published rig scripts for whole game libraries. One example is the SFM_Rigs collection on GitHub, which includes rigs for Black Mesa creatures and other non-human models. Only install scripts from sources you trust.

IK vs FK: When to Use Each

Forward kinematics (FK) means rotating each joint in order, parent first. Inverse kinematics (IK) means placing the end of a chain and letting the solver work out the angles.

IK vs FK comparison in Source Filmmaker showing a leg posed by rotating joints versus moving a foot handle
IK vs FK comparison in Source Filmmaker showing a leg posed by rotating joints versus moving a foot handle.

IK wins whenever a hand or foot has to stay in contact with something. Walking, standing, kneeling, pushing against a wall or holding a rail all need the end of the limb pinned in world space while the body moves. With IK, you key the foot once and move the pelvis freely.

FK wins for swinging, free motion. A punch, a wave or an arm swinging during a run reads as an arc from the shoulder. An IK hand handle tends to travel in straight lines that look mechanical.

The catch is that rig_biped_simple has no built-in IK/FK switch. While it is attached, the arm and leg bones are driven by the rig, and SFM sets the hidden bones aside, so keying them directly has no lasting effect on the pose. If a shot needs FK arms, the usual approaches are to animate those arms before attaching the rig, use a separate shot with an unrigged copy, or use an edited rig script that leaves the arms out.

Posing Tips for IK Rigs

Build IK poses from the ground up: feet first, then pelvis height, then hands. That order keeps the character’s weight believable.

Lock the Feet

Key both foot handles on the first frame of a shot, then key them again wherever a foot lifts or lands. Between those keys, a planted foot should hold one position. If it drifts, check the Graph Editor for an ease curve that creeps between two identical values, and flatten it.

Aim the Knees and Elbows

Every time you move a foot handle a long way, check the matching knee handle. Knees should point roughly over the toes. If a knee drifts inward, pull its handle outward rather than rotating the thigh. For elbows, keep the handle behind and slightly outside the arm. A handle that crosses to the wrong side of the limb is the most common reason a joint suddenly flips.

SFM knee and elbow direction handles showing how rig_knee and rig_elbow placement aims the bend of an IK limb
SFM knee and elbow direction handles showing how rig_knee and rig_elbow placement aims the bend of an IK limb.

Avoid Full Extension

If you pull a hand or foot handle past the length of the limb, the solver straightens the chain and the limb pops. Leave a little bend in standing legs and reaching arms.

Pose for the Camera

Check silhouettes through the shot camera, not the work camera. Our SFM camera tips explain how to frame a shot before you commit to a pose.

Animating Rigs in the Motion Editor and Graph Editor

Rig handles are ordinary controls, so both animation editors treat them like any bone. Each handle has position and rotation channels. IK targets such as feet and hands mostly use position, while the spine and head handles mostly use rotation. If you are new to either editor, start with our guide to the SFM Motion Editor and Graph Editor.

  • In the Motion Editor, select rig_pelvis and use a time selection with falloffs to add a bob to a walk without touching the feet.
  • In the Graph Editor, look at a planted foot’s position curves. They should be flat for every frame the foot is on the ground.
  • Ease a lifting foot off the ground and drop it into contact faster, which gives each step weight.
  • Keep knee handles keyed whenever their foot is keyed. A foot that moves without its knee often causes a twist halfway between keys.

Full SFM Rigging Workflow, Step by Step

This walkthrough assumes a Valve biped, such as a Team Fortress 2 or Half-Life 2 character, placed in a lit map with a shot camera. If you are using a Workshop model, our guide to importing SFM models from the Steam Workshop covers where those files end up.

01

Check the skeleton

Confirm the model uses ValveBiped.Bip01_ or bip_ bone names, or that it came with its own rig script.

02

Save the session

Save before rigging so you can roll back if the script fails or the pose resets.

03

Attach the rig

Right-click the animation set in the Animation Set Editor, open Rig and click rig_biped_simple.

04

Confirm the groups

Look for RigBody, RigArms and RigLegs. If they are missing, open the console and read the error.

05

Plant the feet

Position both foot handles on the ground and key them on the first frame.

06

Set the body

Move rig_pelvis for height and weight, then rotate rig_hips and the spine handles.

07

Place hands and aim joints

Move the hand handles, then adjust knee and elbow handles until no joint bends the wrong way.

08

Finish and refine

Pose fingers and head with FK controls, then clean curves in the Graph Editor and play the shot at full speed.

When the pose or animation holds up, render a test with our best SFM render settings to catch any joint that pops under motion blur.

SFM rig menu path from Animation Set Editor right-click to Rig, rig_biped_simple and Detach Rig, Detach All
SFM rig menu path from Animation Set Editor right-click to Rig, rig_biped_simple and Detach Rig, Detach All.

How to Detach or Remove a Rig

Rigs come off through the same right-click menu that puts them on. Right-click the animation set, open Rig, and look at the top of the list for Detach Rig. Users on the SFM forums report the path as Rig, then Detach Rig, then Detach All. The original bone groups return to view once the rig is gone.

Detaching has the same side effect as attaching: the current motion is baked from one set of controls to the other. Keys can be lost in the process, and frames outside the animation set’s time range may drop back to a zeroed default pose. If you have animation you want to keep, save a copy of the session first.

Common SFM Rigging Errors

SymptomLikely causeFix
Rig runs, nothing changesBone names do not match the scriptUse the model’s own rig script or edit a copy of rig_biped_simple
Script error in the consoleA required bone, such as pelvis or collar, is missingRead the bone name in the error and map it in a custom script
rig_biped_simple not in the Rig menuScript missing from the animset folderVerify SFM’s files through Steam, then restart SFM
Downloaded rig not in the menuWrong folder or a .txt or .html extensionSave it as a .py file in scripts\sfm\animset and restart
Knee or elbow flips mid-shotDirection handle crossed the limbKey the knee or elbow handle and keep it on one side
Limb snaps straightHandle pulled beyond limb lengthBring the hand or foot handle closer to the body
Limbs twist after riggingUnusual bone orientation on a ported skeletonUse a rig made for that model, or adjust the offsets in a custom script

A few mistakes do not throw errors but still ruin shots:

  • Animating the body first, then rigging. The attach step bakes motion and can drop keys you spent time on.
  • Rigging and unrigging repeatedly to switch between IK and FK. Each cycle risks losing animation.
  • Keying hidden bones while the rig is attached. The rig drives those bones, so the change does not stick and the limb ends up in a pose you did not expect.
  • Forgetting the knee handles. A foot moved without its knee often twists the leg between keys.

SFM Rigging FAQs

How do I rig a model in Source Filmmaker?

Right-click the model’s animation set in the Animation Set Editor, open the Rig submenu and choose rig_biped_simple, or the rig script that came with the model. The script adds IK handles for the hands, feet, knees and elbows and hides the original bone groups.

Why does rig_biped_simple not work on my model?

The script finds bones by exact name. It expects Valve names such as ValveBiped.Bip01_Pelvis or the TF2 style bip_pelvis. Models with other bone names need their own rig script, an edited copy of rig_biped_simple, or renamed bones.

Where are SFM rig scripts stored?

Rig scripts are Python files in SourceFilmmaker\game\platform\scripts\sfm\animset inside your Steam library. Each file name appears in the Rig submenu. Add new scripts there and restart SFM to see them.

How do I remove a rig in SFM?

Right-click the animation set, open Rig and use the Detach Rig option at the top of the list, then Detach All. Save first, because detaching bakes the motion back to the bones and can lose keyframes.

Should I use IK or FK in SFM?

Use IK when a hand or foot must stay planted, such as walking, standing or leaning. Use FK for free swinging motion such as punches, waves and arm swings. Fingers, the head and the spine usually stay in FK.

Why do my character’s knees bend the wrong way?

The knee direction handle has crossed to the wrong side of the leg. Move rig_knee in front of the knee, roughly over the toes, and key it whenever you key the foot so it cannot drift between poses.

2 thoughts on “SFM Rigging Guide: IK Rigs and the rig_biped_simple Script”

Leave a Comment