CHARACTER FX · CLOTH BREAKDOWN
Teddy Bear Kurta
A Maharashtrian-style kurta designed, built, simulated and look-developed for a provided teddy bear character: believable weight, folds and fit, no interpenetration, and surfacing matched to a real Paithani fabric reference.
- ROLE
- Everything: garment design, modeling, UVs, cloth simulation, lookdev, lighting, rendering, farm submission, edit
- SOFTWARE
- Maya (garment model, UVs) · Houdini 22 (Vellum, Solaris, Karma XPU, MaterialX, VEX) · husk render farm · ffmpeg
- PLATFORM
- Rocky Linux · Houdini FX Education Edition
- TIMELINE
- About 3 weeks, with in-class reviews at the start of each session
VFX 440 Character Effects: Cloth Pipeline · SCAD, Fall 2026 · Prof. Timothy Steele
Design and reference
PAITHANI · MAHARASHTRAThe brief: a realistic, fully simulated garment made specifically for the bear, with believable weight, folds, fit and contact, no interpenetration, and surfacing that matches a real-world fabric reference. All garment assets were created by me.
The garment is inspired by a men's kurta with Paithani detailing, the silk weaving tradition of Maharashtra: a deep red body with small gold butti motifs, a gold zari border with parrot (muniya) motifs on the hem and cuffs, a band collar, a front placket, and side slits.
Iterations
V1 → FINALThe simulation went through several versions, each one responding to a review.
| VERSION | WHAT HAPPENED | WHAT I CHANGED |
|---|---|---|
| v1 | First kurta, built from the bear's own torso mesh. Stiff, with the sleeves passing through the arms. | Rebuilt the garment instead of patching it. |
| v2 | The kurta stretched to the floor under its own weight. | Bend stiffness had been set as high as stretch stiffness (1e10), so the solver spent its iterations on bending. Fixed bend, and added enough constraint iterations for the mesh resolution. |
| v3 | A clean rebuild: collar attached to the bear, push-out against a VDB of the bear so nothing started inside the body. Clean collisions. | Faculty feedback: still too stiff. |
| v4 | Re-modeled the whole garment in Maya for clean topology and UVs. Much softer folds, but sleeve collision failures. | Traced them to the bear's arm intersecting its own torso, which leaves the cloth nowhere to go. |
| v5 | Sleeves clean after fixing the arm–torso intersection. | Locked the sim. |
| Final | Look development on a studio set, presented with a fixed camera and a rotating character. | – |
Garment construction
MAYA · UVS- Modeled in Maya as a single-layer garment with even quads (about 4 mm at the bear's 0.42 m scale), leaving clearance from the body.
- UVs cut where a tailor would sew (side seams and under the arms), with uniform texel density so the fabric pattern stays the same size on the body, skirt and sleeves.
- Construction details: side slits, hem, cuffs and a front placket, each trimmed with a Paithani border. Trims are selected from the open edges of the mesh and filtered by their T-pose (
rest) position, so they never flicker. - The collar band and the skin-tight pants are deformed with the character rather than simulated, the way stiff interlined pieces and tight garments are usually handled in production.
Simulation
VELLUM · HOUDINI 22PROBLEMS SOLVED ALONG THE WAY
Stretching
Bend stiffness accidentally matched stretch stiffness, starving the stretch constraints of iterations.
Cloth starting inside the body
A push-out wrangle samples a signed-distance VDB of the bear and moves every point to a set clearance.
Hands sticking to the cloth
Caused by an oversized friction attribute on the collider.
Sleeve pinching
The arm intersected the torso, which no solver setting can resolve. The fix had to happen on the character.
Look development
KARMA XPU · MATERIALX- Body fabric: deep red silk with a woven bump, tinted sheen, and gold butti that are metallic, slightly raised, and glossier than the silk.
- Paithani border: gold zari with parrot motifs on the hem, cuffs, slit trim and placket.
- Feedback applied: a classmate suggested more specularity and height on the gold and a bump on the red. Both are in the final.
TEXTURE SET

BODY COLOR

GOLD MASK

HEIGHT

PAITHANI BORDER

PAITHANI BROCADE
AI-assisted textures. The pattern tiles were generated with AI assistance (Gemini). I then made them seamlessly tileable, scaled them, and turned them into the gold masks and height maps shown here.
Presentation and lighting
TURNTABLE · KARMAFollowing faculty direction, the final uses a standard look-development setup: one fixed camera and fixed lights, with the character rotating, so every side of the garment is lit and judged the same way.
- Backdrop: a fabric sweep, itself simulated with Vellum (pinned along the top, settled, then frozen).
- Platform: a dark pedestal that grounds the character.
- Layout: a four-view review followed by a turntable, based on the class example.
Pipeline and rendering
SOLARIS · USD · HUSK- The Solaris stage is exported as a single flattened USD per shot, then rendered on the school farm with husk.
- Farm issues solved: "No cameras found" (SOP Import layer save paths had split the export into several files), texture paths that only resolved locally (fixed with relative asset paths and a matching folder layout), and render settings tuned for refraction depth and firefly control on the gold.
- Final edit assembled with ffmpeg.
What I'd do next
- Amber glass-eye irises built in Copernicus (COPs).
- More wrinkles at the elbows and armpits, with a Wrinkle Deformer or a finer sleeve mesh.
- A smoother platform and a wider backdrop curve, so the floor fades into the wall.
HOW THE FINAL EVOLVED
Credits
- TEDDY BEAR MODEL
- Provided by the course
- FACULTY
- Prof. Timothy Steele
- PEER FEEDBACK
- VFX 440 classmates
- TEXTURE PATTERNS
- Patterns made in Adobe Photoshop
HIRING FOR CHARACTER FX?