
This works as a sort of effect applied to an existing layer (in this case text on a vector layer), so it can be made into any shape (with some limitations) and combined with frame-by-frame animation. Supports any frame rate, direction of deformation/amount of deformation/colors/lighting can be easily changed without manually modifying every frame.
How it works:
- Input layer is converted into a sort-of-but-not-really signed distance field (not sure what it should be called) using a blur filter
- Distance field is deformed by blending it with a moving fill layer containing simplex noise
- Gradient map converts the deformed distance field into a height map
- Phong bumpmap filter adds shading to the height map
- Another gradient map tweaks the colors a bit to make the shading look nicer