Tools I've built for riggers, animators, and the pipeline between them.

Rigging

Joint Vertex Painter

Paint where joints should go, and the tool places them — skeleton placement becomes a brush stroke.

  • Built on Maya's native brush tool, so artists paint regions with familiar controls
  • Preset limb templates — each region is separated by the alpha value of its color

Nurbs Shaper

Fits control curves to any mesh in seconds, instead of hand-tweaking CVs.

  • KDTree lookup snaps curve points to the nearest vertices
  • Mesh detection combines normal maps with OpenMaya.closestIntersection

Auto-Eye-Rigger

From eye geometry to a working eye rig in one pass, with structure-aware blink curves.

  • Generates custom expressions that drive natural blinks

Auto-Tentacle-Rigger

Procedurally rigs tentacles and other long organic appendages — any length, any count.

  • Auto-creates expressions that make long chains simple to animate

Animation

Customizable Anim Picker

Animators build their own control pickers and share them — no TA required.

  • Buttons execute custom Python code
  • Pickers are easily shared between animators
  • Tabs tear off and dock anywhere via MayaQWidgetDockableMixin

Anim Mover

Moves animation between controls without breaking the pose.

  • Matrix-based transfer from parent to children, pose preserved throughout

Jiggler

One-click secondary motion in Maya — overlap and jiggle without a sim setup.

  • Driven by soft rigid-body dynamics for natural dynamic overlaps

Pipeline & Utilities

Hero Template Manager

One click turns a name into a new character with a built Shroud rig, already in Perforce.

  • Builds the full folder structure and pipeline-correct names (SM_ / SK_, costume and variant numbers) for heroes or NPCs
  • Starts from a male/female, small/medium/large proxy body, or any existing skeletal mesh as an override
  • Every generated file is auto-added to Perforce — nothing for the artist to track down

Character Outfit Creator

Sets up a hero's outfit in Unreal in three clicks — every data asset created, linked, and ready to equip.

  • Verifies the hero's gameplay tags, writing any missing ones to config and hot-reloading them — no editor restart
  • Creates and wires the full outfit chain: character parts, outfit collections, weapon outfits, and hero skin
  • Uploads the skin's entitlements automatically, so it's testable in-game right away

Asset Manager

In-house asset pipeline prototype built on Perforce (P4).

  • MongoDB backend handles metadata and data management

Sprite Sheet Maker

Packs flat sprites into optimized texture sheets automatically.

  • Transfers flat sprites into an optimized layout sheet

Language Localizer

One master design, every language — localized logos populate themselves.

  • Smart objects populate logos with the correct language
  • Output organized into structured PSD files and directory folders

Language Translator

Batch-renames files and folders, translating their names to English as it goes.

  • Batch processes file and folder names across whole directory trees