3Ducttapes(); Yvo von Berg | CG Toolsmith blog | C++, Python

Maya blendshape converter

Quick script that I made while reading about how engines converts alembic caches into something that plays in real-time, I guess this happens under the hood when you drag n drop an alembic file with animation into the engine:

Super high lvl:

  1. Create a new skeletal actor instance
  2. Loop over each keyframe and assemble a ‘pose’ (or do every x interval)
  3. Do a diff between the poses and make new blendshapes for them
  4. Assemble everything into a normal skel asset + animation clip.

Wanted to see if I could create a script in Maya that does the same thing:

How it works

  1. Use a mesh as input, and duplicate this for a number of times
  2. Select all of them in the correct order and call cmds.blendShape(), this will all the blendshapes on the first object
  3. Create some animation by setting and keying the blendshapes

That was fun.